[시큐어코딩 가이드] 주석문 안에 포함된 시스템 주요정보

 

 

 

■ 보안기능

 

보안기능(인증, 접근제어, 기밀성, 암호화, 권한관리 등)을 부적절하게 구현 시 발생할 수 있는 보안약점으로 적절한 인증 없는 중요기능 허용, 부적절한 인가 등이 포함된다.

 

 

주석문 안에 포함된 시스템 주요정보

 

■ 개요

 

패스워드를 주석문에 넣어두면 시스템 보안이 훼손될 수 있다. 소프트웨어 개발자가 편의를 위해서 주석문에 패스워드를 적어둔 경우, 소프트웨어가 완성된 후에는 그것을 제거하는 것이 매우 어렵게 된다. 또한, 공격자가 소스코드에 접근할 수 있다면, 아주 쉽게 시스템에 침입할 수 있다.

 

 

■ 안전한 코딩 기법

 

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

 

 

코드예제

 

편리성을 위해 아이디, 패스워드 등 중요정보를 주석문 안에 작성 후 지우지 않는 경우 정보노출 보안약점이 발생한다.

 

안전하지 않은 코드의 예
def user_login(id, passwd):
# 주석문에 포함된 중요 시스템의 인증 정보
# id = admin
# passwd = passw0rd
result = login(id, passwd)
return result

 

프로그램 개발 시에 주석문 등에 남겨놓은 사용자 계정이나 패스워드 등의 정보는 개발 완료 시에 확실하게 삭제하여야한다.

 

안전한 코드의 예
def user_login(id, passwd):
# 주석문에 포함된 민감한 정보는 삭제
result = login(id, passwd)
return result

 

 

댓글

Designed by JB FACTORY