반응형
https://www.kisa.or.kr/public/laws/laws3.jsp
구현 단계 시큐어코딩 가이드 - 에러처리 - 오류 상황 대응 부재
가. 개요
- 오류가 발생할 수 있는 부분을 확인하였으나, 이러한 오류에 대하여 예외 처리를 하지 않을 경우, 공격자는 오류 상황을 악용하여 개발자가 의도하지 않은 방향으로 프로그램이 동작하도록 할 수 있다.
나. 보안대책
- 오류가 발생할 수 있는 부분에 대하여 제어문을 사용하여 적절하게 예외 처리(C/C++에서 if와 switch, Java에서 try-catch 등)를 한다
다. 코드예제
JAVA
더보기
다음 예제는 try 블록에서 발생하는 오류를 포착(catch)하고 있지만, 그 오류에 대해서 아무 조치를 하고 있지 않음을 보여준다. 아무 조치가 없으므로 프로그램이 계속 실행되기 때문에 프로그램에서 어떤 일이 일어났는지 전혀 알 수 없게 된다.
예외를 포착(catch)한 후, 각각의 예외 사항(Exception)에 대하여 적절하게 처리해야 한다.
C#
더보기
다음의 C# 코드도 예외상황에 대한 조치가 없다.
각각의 예외 상황에 대해 적절한 조치를 수행해야 한다.
참고자료
- CWE-390 Detection of Error Condition Without Action, MITRE,
http://cwe.mitre.org/data/definitions/390.html - Do not suppress or ignore checked exceptions, CERT,
http://www.securecoding.cert.org/confluence/display/java/ERR00-J.+Do+not+suppress+or+ignore+checked+exceptions
반응형
'공부 > KISA' 카테고리의 다른 글
Null Pointer 역참조 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.22 |
---|---|
부적절한 예외 처리- KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.22 |
오류 메시지를 통한 정보노출 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.22 |
종료되지 않는 반복문 또는 재귀함수 - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.22 |
경쟁조건: 검사시점과 사용시점(TOCTOU) - KISA 소프트웨어 개발 보안 가이드 (0) | 2020.07.22 |
댓글