예외 정보 노출

C# 예외 정보 노출

설명

예외 메시지, 스택 트레이스, 내부 예외 정보를 클라이언트 응답에 포함하면 내부 구현과 환경 정보가 노출될 수 있습니다.

잠재적 영향

  • 내부 경로, 타입, 프레임워크 동작, 입력 검증 실패 지점이 노출되어 후속 공격을 돕습니다.

해결 방법

클라이언트에는 일반화된 오류 메시지를 반환하고 상세 예외 정보는 서버 로그에만 기록합니다.

예시

변경 전

csharp
return BadRequest(new { error = ex.Message });

변경 후

csharp
logger.LogError(ex, "Request failed");
return BadRequest(new { error = "Request failed" });

설명:

  • 변경 전: 예외 메시지나 스택 트레이스를 클라이언트에 반환하면 내부 경로, 타입, 구현 세부 정보가 노출될 수 있습니다.
  • 변경 후: 클라이언트에는 일반적인 오류를 반환하고 자세한 예외 정보는 서버 측 로그에만 기록하세요.

참조