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
'about Security > SECURE CODING' 카테고리의 다른 글
[보안기능] 사용자 하드디스크에 저장되는 쿠키를 통한 정보 노출 (5등급) (0) | 2021.08.10 |
---|---|
[에러처리] 부적절한 예외 처리 (5등급) (0) | 2021.08.10 |
[캡슐화] 잘못된 세션에 의한 데이터 정보 노출 (5등급) (0) | 2021.08.10 |
[에러처리] 오류 메세지를 통한 정보 노출 (5등급) (0) | 2021.08.10 |
[시간 및 상태] 종료되지 않는 반복문 또는 재귀 함수 (5등급) (0) | 2021.08.10 |
댓글