반응형
https://www.kisa.or.kr/public/laws/laws3.jsp
구현 단계 시큐어코딩 가이드 - 에러처리 - 오류 메시지를 통한 정보 노출
가. 개요
- 응용프로그램이 실행환경, 사용자 등 관련 데이터에 대한 민감한 정보를 포함하는 오류 메시지를 생성하여 외부에 제공하는 경우, 공격자의 악성 행위를 도울 수 있다. 예외 발생 시 예외 이름이나 스택 트레이스를 출력하는 경우, 프로그램 내부구조를 쉽게 파악할 수 있기 때문이다.
나. 보안대책
- 오류 메시지는 정해진 사용자에게 유용한 최소한의 정보만 포함하도록 한다.
- 소스코드에서 예외 상황 은 내부적으로 처리하고 사용자에게 민감한 정보를 포함하는 오류를 출력하지 않도록 미리 정의된 메시지를 제공하도록 설정한다.
다. 코드 예제
JAVA
더보기
오류 메시지는 정해진 사용자에게 유용한 최소한의 정보만 포함하도록 한다. 소스코드에서 예외 상황 은 내부적으로 처리하고 사용자에게 민감한 정보를 포함하는 오류를 출력하지 않도록 미리 정의된 메시지를 제공하도록 설정한다.
아래 코드와 같이 예외 이름이나 오류 추적 정보를 출력하지 않도록 한다.
C#
더보기
다음 예제는 오류 메시지에 예외 이름이나 오류 추적 정보를 출력하여 프로그램 내부 정보가 유출되는 C#코드이다.
예외 관련한 최소한의 정보만 출력하도록 한다.
참고자료
- CWE-209 Information Exposure Through an Error Message, MITRE,
http://cwe.mitre.org/data/definitions/209.html - Do not allow exceptions to expose sensitive information, CERT,
http://www.securecoding.cert.org/confluence/display/java/ERR01-J.+Do+not+allow+exceptions+to+expose+sensitive+information?focusedCommentId=61702253#com ment-61702253 - Error Handling, OWASP
https://www.owasp.org/index.php/Error_Handling
반응형
'공부 > KISA' 카테고리의 다른 글
부적절한 예외 처리- KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.22 |
---|---|
오류 상황 대응 부재 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.22 |
종료되지 않는 반복문 또는 재귀함수 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.22 |
경쟁조건: 검사시점과 사용시점(TOCTOU) - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.22 |
반복된 인증시도 제한 기능 부재 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.21 |
댓글