상세 컨텐츠

본문 제목

[한국인터넷진흥원][정보보호] 소프트웨어 보안약점 진단가이드 (2021.11)

정보보호 자료실/가이드라인

by 황컴플라이언스 2025. 1. 27. 14:48

본문

반응형

안녕하세요. 황컴플라이언스 입니다.

[한국인터넷진흥원][정보보호] 소프트웨어 보안약점 진단가이드 (2021.11) 입니다.

업무에 참고하시기 바랍니다.

 

○ 자료명 : 소프트웨어 보안약점 진단가이드

○ 발행일 : 2021년 11월

○ 주관부처 : 한국인터넷진흥원


[개요]

□ 추진배경

      • 공격자의 초점이 지속적으로 애플리케이션 계층을 향해 이동함에 따라 소프트웨어(SW, Software) 자원보호가 중요 해졌다.
      • 최근 발생되는 인터넷상 공격시도의 약 75%는 소프트웨어의 보안취약점을 악용하는 것으로, 특히 외부에 공개되어 불특정 다수를 대상으로 사용자 정보를 처리하는 웹 애플리 케이션의 취약점으로 인해 중요정보가 유출되는 침해사고가 빈번하게 발생되고 있다.
      • 보안강화를 위해 구축해놓은 침입 차단시스템과 같은 보안장비로는 응용프로그램 취약점에 대한 공격을 완벽히 방어하는 것은 불가능하다. ‘SW개발보안’은 SW개발과정에서 개발자의 실수, 논리적 오류 등으로 인해 발생될 수 있는 보안 취약점, 보안약점들을 최소화하여 사이버 보안위협에 대응할 수 있는 안전한 SW를 개발하기 위한 일련의 보안활동을 의미한다.
      • 즉, SW개발 생명주기(SDLC, Software Development Life Cycle)의 각 단계별로 요구되는 보안활동을 수행함으로써 안전한 소프트웨어를 만들 수 있도록 한다.
      • SW개발보안의 중요성을 인식한 미국의 경우 국토안보부(DHS)를 중심으로 시큐어코딩(Secure Coding)을 포함한 SW개발 전 과정(설계, 구현, 시험 등)에 대한 보안 활동 연구를 활발히 진행하고 있으며, 이는 2011년 발표한 “안전한 사이버 미래를 위한 청사진(Blueprint for a Secure Cyber Future)”에 나타나있다.
      • 국내의 경우,2009년부터 SW개발단계에서 SW보안약점을 진단하여 제거하는 SW개발보안 관련 연구를 진행하면서, 2009년부터 2011년까지 전자정부 지원 사업을 대상으로 SW보안약점 진단 시범사업을 수행하였다.
      • SW보안약점 제거·조치 성과에 따라 2012년 SW개발보안 제도가 도입되어 단계적으로 의무화가 이루어졌다.

소프트웨어_보안약점_진단가이드2021.z02
10.00MB
소프트웨어_보안약점_진단가이드2021.zip
6.80MB
소프트웨어_보안약점_진단가이드2021.z01
10.00MB
소프트웨어 보안취약점 진단가이드 (2021.11) : 한국인터넷진흥원, 행정안전부


□ 가이드 목적 및 구성

소프트웨어 보안의 목표는 성공적인 사업을 운영하기 위한 정보자원의 기밀성, 무결성, 가용성을 유지하는 것이다. 이러한 목표를 달성하기 위해서 보안통제 기능의 구현이 요구되며, 이 가이드에서 소프트웨어의 취약점을 완화시킬 수 있는 각 개발 단계별 기술적 통제항목이 소프트웨어 개발에 올바르게 적용되었는지 진단하는 방법을 중점적으로 설명하고 있다.

  • 소프트웨어 보안 취약점은 - 보안 요구사항이 정의되지 않았거나,
  • 논리적인 오류를 가지는 설계를 수행하였거나,
  • 기술취약점을 가지는 코딩 규칙을 적용하였거나,
  • 소프트웨어 배치가 적절하지 않았거나,
  • 발견된 취약점에 대해 적절한 관리 또는 패치를 하지 않은 경우

발견되며, 이러한 취약점으로 인해 시스템이 처리하는 중요정보가 노출되거나 정상적인 서비스가 불가능한 상황이 발생하게 된다.

이 가이드는 소프트웨어 개발 생명주기에 고려되어야 하는 보안위협을 최소화하기 위해 각 단계별 수행해야 하는 보안 활동들이 개발자들에 의해 적절하게 수행되었는지를 점검하는 SW보안약점 진단원들에게 도움이 되도록 한다.


[목차]

PART1 제1장 개요

제1절 배경

제2절 가이드 목적 및 구성

PART2 제2장 소프트웨어 개발보안

제1절 개요

제2절 소프트웨어 개발보안 체계

제3절 소프트웨어 보안약점 진단

  • 1. 개요
  • 2. SW보안약점 진단원의 역할
  • 3. 분석·설계단계 진단절차
  • 4. 구현단계 진단절차

PART3 제3장 분석·설계단계 보안약점 진단

제1절 보안항목 식별

  • 1. 정보에 대한 보안항목 식별
  • 2. 기능에 대한 보안항목 식별 
  • 3. 구현단계 기준과의 관계

제2절 설계단계 보안설계 적용 방법

제3절 설계단계 보안설계 기준

  • 1. 입력데이터 검증 및 표현 
  • 1.1 DBMS 조회 및 결과 검증
  • 1.2 XML 조회 및 결과 검증 
  • 1.3 디렉토리 서비스 조회 및 결과 검증
  • 1.4 시스템 자원 접근 및 명령어 수행 입력값 검증
  • 1.5 웹 서비스 요청 및 결과 검증
  • 1.6 웹 기반 중요 기능 수행 요청 유효성 검증 
  • 1.7 HTTP 프로토콜 유효성 검증 
  • 1.8 허용된 범위내 메모리 접근

제3장 분석·설계단계 보안항목 진단

  • 1.9 보안기능 입력값 검증 
  • 1.10 업로드·다운로드 파일 검증 
  • 2. 보안기능
  • 2.1 인증 대상 및 방식
  • 2.2 인증 수행 제한 
  • 2.3 비밀번호 관리
  • 2.4 중요자원 접근통제 
  • 2.5 암호키 관리
  • 2.6 암호연산
  • 2.7 중요정보 저장 
  • 2.8 중요정보 전송
  • 3. 에러처리
  • 3.1 예외처리 
  • 4. 세션통제 
  • 4.1 세션 통제

PART4 제4장 구현단계 보안약점 진단

제1절 입력데이터 검증 및 표현

  • 1. SQL 삽입
  • 2. 코드삽입
  • 3. 경로 조작 및 자원 삽입
  • 4. 크로스사이트 스크립트
  • 5. 운영체제 명령어 삽입
  • 6. 위험한 형식 파일 업로드
  • 7. 신뢰되지 않는 URL 주소로 자동접속 연결 
  • 8. 부적절한 XML 외부개체 참조
  • 9. XML 삽입
  • 10. LDAP 삽입
  • 11. 크로스사이트 요청 위조 
  • 12. 서버사이드 요청 위조
  • 13. HTTP 응답분할
  • 14. 정수형 오버플로우
  • 제4장 구현단계 보안약점 진단
  • 15. 보안기능 결정에 사용되는 부적절한 입력값
  • 16. 메모리 버퍼 오버플로우 
  • 17. 포맷 스트링 삽입

제2절 보안기능 

  • 1. 적절한 인증 없는 중요기능 허용 
  • 2. 부적절한 인가
  • 3. 중요한 자원에 대한 잘못된 권한 설정
  • 4. 취약한 암호화 알고리즘 사용
  • 5. 암호화되지 않은 중요정보
  • 6. 하드코드된 중요정보
  • 7. 충분하지 않은 키 길이 사용
  • 8. 적절하지 않은 난수 값 사용
  • 9. 취약한 비밀번호 허용 
  • 10. 부적절한 전자서명 확인 
  • 11. 부적절한 인증서 유효성 검증 
  • 12. 사용자 하드디스크에 저장되는 쿠키를 통한 정보 노출
  • 13. 주석문 안에 포함된 시스템 주요정보
  • 14. 솔트 없이 일방향 해쉬 함수 사용 
  • 15. 무결성 검사 없는 코드 다운로드
  • 16. 반복된 인증시도 제한 기능 부재 

제3절 시간 및 상태 

  • 1. 경쟁조건: 검사 시점과 사용 시점(TOCTOU) 
  • 2. 종료되지 않는 반복문 또는 재귀 함수

제4절 에러처리

  • 1. 오류 메시지 정보노출 
  • 2. 오류상황 대응 부재
  • 3. 부적절한 예외 처리

제5절 코드오류

  • 1. Null Pointer 역참조
  • 2. 부적절한 자원 해제
  • 3. 해제된 자원 사용
  • 4. 초기화되지 않은 변수 사용 
  • 5. 신뢰할 수 없는 데이터의 역직렬화

제4장 구현단계 보안약점 진단

제6절 캡슐화

  • 1. 잘못된 세션에 의한 데이터 정보 노출
  • 2. 제거되지 않고 남은 디버그 코드
  • 3. Public 메소드부터 반환된 Private 배열 
  • 4. Private 배열에 Public 데이터 할당

제7절 API 오용 

  • 1. DNS lookup에 의존한 보안결정
  • 2. 취약한 API 사용

PART5 제5장 부록

제1절 설계단계 보안설계 기준

제2절 구현단계 보안약점 제거 기준 

제3절 설계단계 보안설계 산출물 적용 예

제4절 용어정리


 더 많은 자료 찾아보기

 

황컴플라이언스의 공간

개인정보, 개인정보보호, 개인정보보호법, 정보통신망법, 컴플라이언스, 법규준수, 개인정보보호 관리체계

abraham-hwang.tistory.com

반응형

관련글 더보기