유형 | 보안기능 |
설계항목 | 암호키 관리 |
설명 | 암호키 생성, 분배, 접근, 파기 등 암호키 생명주기별 암호키 관리방법을 안전하게 설계한다. |
보안대책 | ① DB데이터 암호화에 사용되는 암호키는 한국인터넷진흥원의 '암호이용안내서'에서 정의하고 있는 방법을 적용해야 한다. ② 설정파일(xml, Properties)내의 중요정보 암호화에 사용되는 암호키는 암호화해서 별도의 디렉토리에 보관해야 한다. |
연관된 구현단계 기준 | 하드코드된 중요정보 주석문 안에 포함된 시스템 주요정보 |
취약점 개요
사례1 : 하드코드된 암호키
코드 내부에 암호화 키를 하드코딩하여 사용하여 암호화를 수행하면 암호화된 정보가 유출될 가능성이 높아진다.
사례2 : 주석문 안에 포함된 암호키
주석문 안에 암호키에 대한 설명이 포함된 경우 공격자가 소스코드에 접근할 수 있다면 아주 쉽게 암호키가 노출될 수 있다.
설계 시 고려사항
① DB데이터 암호화에 사용되는 암호키는 한국인터넷진흥원의 '암호이용안내서'에서 정의하고 있는 방법을 적용해야 한다.
(ㄱ) 암호키 관리 규칙 생성 시 고려사항
DB데이터 암호화에 사용되는 암호키는 데이터가 저장되는 데이터베이스와 물리적으로 분리된 장소에 별도로 보관한다.
암호키를 생성, 분배, 사용, 폐기하는 키의 생명주기관리를 위한 명시적인 암호화 정책을 적용한다.
비밀번호나 암호키는 메모리에 저장하지 않는다.
비밀번호나 암호키가 메모리에 저장되어야 하는 경우 사용종료 후 메모리를 0으로 초기화한다.
암호키 생성 및 변경 시 암호키에 대한 백업기능을 구현한다.
암호 알고리즘에 사용되는 키 종류에 따라 사용 유효기한을 설정한다.
(ㄴ) 조직의 보호 목적에 따라 암호키 관리 수준을 지정
NIST에서 제정한 FIPS 140-2의 레벨로써, 조직의 보호 목적에 따라 적절히 채택한다.
(ㄷ) 키 생명주기 기준 암호화 키 관리 프로세스를 구축
키 생성 - 암호키와 비밀번호를 생성, 사용, 관리하는 사람 등을 명시하고 키를 생성하는데 사용하는 프로그램 등 어떠한 방법으로 생성하는지에 대한 절차를 명시한다.
키 사용 - 암호키와 비밀번호를 어떠한 방법으로 사용하는지에 대한 절차, 생성한 키의 종류에 따른 변경 주기, 인가된 사용자만 키에 접근할 수 있는 접근통제 방법 및 요구사항 등을 명시한다.
키 폐기 - 키의 사용주기가 다 된 경우, 사용 용도가 끝난 경우 등 생성한 키를 폐기하여야 하는 조건을 정하고, 암호키와 비밀번호를 안전하게 폐기하는 절차 및 요구사항 등을 명시한다.
(ㄹ) 키 복구 방안
사용자 퇴사 등으로 인해 사용자 이외의 사람에게 키 복구가 필요한 경우, 암호키는 정보보호 담당자의 관리하에 암호화 키 관리대장 등에서 복구하고, 비밀번호는 정보보호 담당자가 임시 비밀번호를 발급하는 등 키 복구에 대한 방안을 마련하도록 한다.
(ㅁ) 암호키 사용 유효기간
암/복호화 키의 사용이 일정 기간을 넘은 경우 사용자 인터페이스로 키 사용 기간이 경과했음을 알리고 새로운 키 생성을 권장하도록 설계한다.
② 설정파일(xml, Properties)내의 중요정보 암호화에 사용되는 암호키는 암호화해서 별도의 디렉토리에 보관해야 한다.
설정파일 내의 중요정보 암호화에 사용된 암호키는 마스터키를 이용하여 암호화하여 별도의 디렉토리에 보관한다.
진단 세부사항
요구사항 ① DB데이터 암호화에 사용되는 암호키는 한국인터넷진흥원의 '암호이용안내서'에서 정의하고 있는 방법을 적용해야 한다.
- 암호키를 관리하기 위한 정책이 수립되어 있으며, 안전하게 암호키를 관리하기 위한 방법이 설계에 반영되어 있는지 확인
- 암호키가 안전하게 관리되는지 점검하는 테스트 계획이 수립되어 있는지 확인
요구사항 ② 설정파일(xml, Properties)내의 중요정보 암호화에 사용되는 암호키는 암호화해서 별도의 디렉토리에 보관해야 한다.
- 설정파일에 저장되는 중요정보가 안전하게 암호화되어 저장되도록 설계되어 있는지 확인
- 설정파일의 중요정보가 암호화되어 저장되는지 점검하는 테스트 계획이 수립되어 있는지 확인
'Cert > 소프트웨어(SW) 보안약점 진단원' 카테고리의 다른 글
설계단계 보안설계 기준 - 중요정보 저장 (0) | 2024.08.26 |
---|---|
설계단계 보안설계 기준 - 암호연산 (0) | 2024.08.26 |
설계단계 보안설계 기준 - 중요자원 접근통제 (0) | 2024.08.26 |
설계단계 보안설계 기준 - 비밀번호 관리 (0) | 2024.08.23 |
설계단계 보안설계 기준 - 인증 수행 제한 (0) | 2024.08.23 |