Skip to content

소프트웨어개발보안가이드 #
Find similar titles

소프트웨어 개발 보안 가이드 #

Image

소프트웨어 개발 보안 가이드란? #

소프트웨어 개발 보안 가이드는 소프트웨어 개발과정에서 발생할 수 있는 보안취약점이나 보안 약점을 최소화하여 사이버 보안 위협에 대응할 수 있는 안전한 소프트웨어의 개발을 유도하고 지원하기 위한 보안 활동 가이드 문서로, 한국인터넷진흥원(KISA)에서 편찬하였다. 다운로드 링크 : [https://www.kisa.or.kr/uploadfile/201702/201702140920275581.pdf]

소프트웨어 개발 보안의 역사 #

미국의 경우 2002년 연방정보보안관리법을 제정하여 일종의 개발 보안 방법론인 '시큐어 코딩'을 의무화하였으며 마이크로소프트와 같은 사기업에서도 적극적으로 개발 보안을 적용하고 있다. 우리나라의 경우 2012년 12월부터 소프트웨어 개발 보안 의무제가 시행되었고 공공기관에서 발주되는 시스템 통합(SI)사업에는 의무적으로 개발 보안을 적용하도록 제도화하였다. (행정기관 및 공공기관 정보시스템 구축·운영 지침(행정안전부 고시 제2018-21호))

소프트웨어 보안취약점 #

소프트웨어 보안취약점은 크게 다음과 같은 경우 발생한다.

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

소프트웨어 개발 보안 가이드 문서 #

지난 2019년 11월, 소프트웨어 개발 보안 가이드의 최신버전이 배포되었다. 이 시점 이후에 시작된 모든 국내 공공기관의 SI 사업은 최신버전에서 권고하는 내용을 준수하여 개발해야 한다.

소프트웨어 개발 보안 가이드의 목적 및 구성 #

소프트웨어 개발 보안 가이드의 목적 #

성공적인 소프트웨어 개발을 위한 정보 자원의 기밀성, 무결성, 가용성을 유지하는 것이 주요 목표이며 이를 위해 요구되는 보안 통제 기능의 구현을 위해 개발단계별 기술적 통제 항목을 거론하고 있다.

Image

소프트웨어 개발 보안 가이드의 구성 #

- (1장) 개요 
- (2장) 개발 보안 의무화 대상, 범위, 기준과 정보화 사업 단계별, 기관별(주체별) 개발 보안 활동 소개
- (3장) 분석/설계단계 소프트웨어 보안 강화 활동 소개
- (4장) 구현단계 소프트웨어 보안 약점에 대한 설명 및 보안대책과 자바, C, C#언어로 작성된 안전하지 않은 코딩 예제 기반의 시큐어 코딩 예시 소개
- (부록) 설계단계 보안 항목, 소프트웨어 보안 약점 항목, 설계항목별 적용계획서, 전자정부 프레임워크 공통모듈 설계항목 적용 예, 용어정리, 참고자료

파트별 주요 내용 #

2장 소프트웨어 개발 보안 #

- 소프트웨어 개발 보안의 필요성
- 소프트웨어 개발 보안 체계
- 소프트웨어 개발 보안 방법론
- 프로젝트 참여직무별 보안 활동

Image

3장 분석/설계단계 SW 보안 강화 #

- 분석/설계단계 주요 보안활동
- 기능 설계 시 설계 보안 항목 적용 방법
- 설계보안항목 정의 및 설계 시 고려사항
-- 입력 데이터 검증 및 표현 설계항목
-- 보안 기능 설계항목
-- 에러처리 설계항목
-- 세션 통제 설계항목

Image

4장 구현단계 시큐어 코딩 가이드 #

- 입력 데이터 검증 및 표현
- 보안 기능
- 시간 및 상태
- 에러처리
- 코드 오류
- 캡슐화
- API 오용

Image

5장 부록 #

- 설계단계 보안 항목
- 구현단계 SW 보안 약점 항목
- 설계항목별 적용계획서
- 설계단계 항목별 산출물 적용 예
- 용어 정리

Image

0.0.1_20210630_7_v33