본문 바로가기
about Security/SECURE CODING

[보안기능] 주석문 안에 포함된 시스템 주요 정보 (5등급)

by saniii 2021. 8. 10.

 

0. 개요 

 

패스워드와 같은 시스템의 중요한 정보를 주석문 안에 (개발자의 편의를 위해서)적어두는 경우,

소프트웨어가 완성된 경우에는 이것을 제거하는 것이 매우 어려워지며

공격자가 소스코드에 접근할 수 있다면, 아주 쉽게 시스템에 침입할 수 있다.

 

 

 

1. 보안 대책

 

- 주석에는 ID, 패스워드 등 보안과 관련된 내용을 기입하지 않는다.

 

 

 

2. 진단 방법

 

 - DB접속, 관리자 로그인 등이 구현된 코드 확인

 - 주석에 중요 정보가 포함되어 있는지 확인

 

 

 

3. 코드 예시

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

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

 

 

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

 

 

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

 

 

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

 

 

 

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

 

 

 

 

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

 

 

 

 

4. 해당 취약점 CASE

 

- 주석 안에 개발자의 이해를 돕기 위한 목적 등으로 패스위드를 작성해 놓았을 경우

 

 

 

#. 참고 블로그 

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

 

[구현보안] 보안기능 13 - 주석문 안에 포함된 시스템 주요정보

가. 원인 - 주석문 안에 시스템 중요정보가 작성되어 있는 경우 - 개발과정에서 개발편의상 중요정보를 포함하여 작성한 주석을 삭제하지 않은 경우 나. 영향 - 바이너리 파일의 디컴파일을 통해

prokyhsigma.tistory.com

 

 

댓글