데이터베이스 오류 메시지 생성
설명
응용 프로그램에서는 데이터베이스 오류 메시지를 반환하는 것으로 확인되었습니다. 데이터베이스의 유형을 결정하는 것은 시스템에 대한 SQL Injection 공격을 수행하는 공격자에게 도움이 될 수 있습니다. 디버그 메시지는 개발 및 디버깅 중에 유용하지만 오류가 발생할 때 사용자에게 표시되어서는 안 됩니다.
교정
응용 프로그램은 데이터베이스 오류 조건을 내부적으로 처리하고 알려진 실패 유형을 오류 코드로 매핑하여 사용자에게 표시할 수 있도록 해야 합니다. 이러한 오류 코드는 응용 프로그램에 맞게 사용자화되어야 하며 관련 HTTP 오류 코드와 함께 반환되어야 합니다.
오류가 발생할 때, 응용 프로그램은 오류 유형이나 클래스를 식별하고 사용자에게 숫자 값으로 표시합니다. 요청은 또한 추적되어야 합니다. 따라서 사용자가 오류 코드를 볼 때 해당 요청 ID가 있어야 합니다. 지원 팀은 로그 파일에서 HTTP 오류, 사용자 정의 오류 코드, 및 요청 ID를 연관시켜 오류의 근본 원인을 노출하지 않은 채로 결정할 수 있습니다.
사용자 정의 오류 반환 예시:
HTTP/1.1 500 내부 서버 오류
...
오류 [0004] 발생, 지원팀에 문의하거나 잠시 후에 요청을 다시 시도하세요.
요청 ID [a4bc91def12]
...
세부 정보
ID | 집계 | CWE | 유형 | 위험 |
---|---|---|---|---|
209.2 | false | 209 | 수동적 | 낮음 |