about Security/SECURE CODING

[에러처리] 부적절한 예외 처리 (5등급)

saniii 2021. 8. 10. 23:24

 

0. 개요 

 

프로그램 수행 중에 함수의 결과값에 대한 적절한 처리

또는 예외 상황에 대한 조건을 적절하게 검사하지 않을 경우,

예기치 않은 문제를 야기할 수 있다.

 

 

 

1. 보안 대책

 

- 값을 반환하는 모든 함수의 결과값을 검사하여, 의도한 값을 반환하는지 확인한다.

 

- 예외처리를 사용하는 경우 광범위한 예외 처리 대신 구체적인 예외처리를 수행한다.

 

 

 

2. 진단 방법

 

 - 예외처리 로직을 확인한다.

 

 - 예외처리를 구체적으로 나누어 처리하는지 확인한다.

 

 

 

3. 코드 예시

소프트웨어 개발보안 가이드 (2019.11) / 행정안전부 & 한국인터넷진흥원

# 1  -  제거되지 않고 남은 디버그 코드 - 안전하지 않은 코드 예시(JAVA)

 

 

# 1  +  제거되지 않고 남은 디버그 코드 - 안전한 코드 예시(JAVA)

 

 

# 2  -  제거되지 않고 남은 디버그 코드 - 안전하지 않은 코드 예시(JAVA)

 

 

# 2  +  제거되지 않고 남은 디버그 코드 - 안전한 코드 예시(JAVA)  

 

 

 

 

 

 

#. 참고 블로그 

https://prokyhsigma.tistory.com/73?category=848515 

 

[구현보안] 에러처리 03 - 부적절한 예외 처리

가. 원인 - 여러 개의 코드에 하나의 try 블럭을 설정하여, 모든 예외에 대해 하나의 방식으로 예외를 처리하는 경우 나. 영향 - 각각의 예외처리에 대해 적절한 대응이 불가 - 부적절한 리소스 관

prokyhsigma.tistory.com