Secure SDLC
Secure SDLC의 개요
- 보안상 안전한 소프트웨어를 개발하기 위해 SDLC(소프트웨어 개발 생명주기)에 보안 강화를 위한 프로세스를 포함한 것
- 유지보수 단계에서 보안 이슈를 해결하기 위해 소모되는 비용을 최소화하기 위함
- Secure Software 사의 CLASP, Microsoft 사의 SDL 등
요구사항 분석 단계에서의 보안 활동
- 보안 항목에 해당하는 요구사항을 식별하는 작업 수행
- 보안 수준을 보안 요소별로 등급을 구분하여 분류
- 보안 요소 : 기밀성, 무결성, 가용성, 인증, 부인 방지
설계 단계에서의 보안 활동
- 식별된 요구사항을 소프트웨어 설계서에 반영하고 보안 설계서 작성
- 네트워크, 서버, 물리적 보안, 개발 프로그램 등 환경에 대한 보안통제 기준을 수립하여 설계에 반영
구현 단계에서의 보안 활동
- 표준 코딩 정의서 및 소프트웨어 개발 보안 가이드를 준수하여 설계서에 따라 보안 요구 사항 구현
- 단위 테스트 실행
- 시큐어 코딩 : 구현 단계에서 발생할 수 있는 보안 취약점을 최소화하기 위해 보안 요소들을 고려하여 코딩
테스트 단계에서의 보안 활동
- 작성된 보안 설계서를 바탕으로 보안 사항들이 정확히 반영되고 동작되는지 점검
유지보수 단계에서의 보안 활동
- 이전 과정을 모두 수행했음에도 발생할 수 있는 보안사고들을 식별하고 발생 시 해결하고 보안 패치 실시
세션 통제
세션 통제의 개요
- 서버와 클라이언트의 연결인 세션 간의 연결로 인해 발생하는 정보를 관리
- 요구사항 분석 및 설계 단계에서 진단해야 하는 보안 점검 내용
불충분한 세션 관리
- 일정한 규칙이 존재하는 세션ID가 발급되거나 타임아웃이 너무 길게 설정되어 있는 경우 발생
- 세션 하이재킹(세션 정보를 가로채는 공격)을 통해 획득한 세션 ID로 접근할 수 있음
잘못된 세션에 의한 정보 노출
- 다중 스레드 환경에서 멤버 변수에 정보를 저장할 때 발생
- 변수의 범위를 제한하는 방법으로 방지 가능
- 싱글톤 패턴에서 발생하는 레이스컨디션으로 인해 동기화 오류가 발생하거나 멤버 변수의 정보가 노출될 수 있음
- 레이스컨디션 : 두 개 이상의 프로세스가 공용 자원을 획득하기 위해 경쟁하고 있는 상태
세션 설계 시 고려사항
- 로그아웃 요청 시 할당된 세션이 완전히 제거되도록 함
- 이전 세션이 종료되지 않으면 새로운 세션이 생성되지 못하도록 함
입력 데이터 검증 및 표현
입력 데이터 검증 및 표현의 개요
- 입력 데이터로 인해 발생하는 문제들을 예방하기 위해 구현 단계에서 검증해야 하는 보안 점검 항목
- 개발 단계에서 유효성 검증 체계를 갖추고 검증되지 않은 데이터가 입력될 시 처리할 수 있도록 구현해야 함
- 일관된 언어셋을 사용하여 코딩
입력 데이터 검증 및 표현의 보안 약점
보안 기능
보안 기능의 개요
- 코딩하는 기능인 인증, 접근제어, 기밀성, 암호화들을 올바르게 구현하기 위해 구현 단계에서의 보안 점검 항목
보안 기능의 보안 약점
시간 및 상태
시간 및 상태의 개요
- 동시 수행을 지원하는 병렬 시스템이나 다수의 프로세스가 동작하는 환경에서 시간과 실행 상태를 관리하여 원활하게 동작되도록 하기 위한 보안 검증 항목
TOCTOU 경쟁 조건
- 검사 시점과 사용 시점을 고려하지 않고 발생하는 보안 약점
종료되지 않은 반복문 또는 재귀 함수
- 조건이나 논리 구조를 잘못 구성하여 종료할 수 없게 되는 경우 시스템 자원을 끊임없이 사용하여 자원고갈로 인한 서비스 또는 시스템 장애 발생
필기 정리
'2020(개정) 이후 정보처리기사 > 5과목 : 정보시스템 구축 관리' 카테고리의 다른 글
2020 정보처리기사 필기 - 5.4 시스템 보안 구축 (10) | 2020.04.19 |
---|---|
2020 정보처리기사 필기 - 5.3 소프트웨어 개발 보안 구축(2) (0) | 2020.04.17 |
2020 정보처리기사 필기 - 5.2 IT 프로젝트 정보 시스템 구축 관리(3) (0) | 2020.04.17 |
2020 정보처리기사 필기 - 5.2 IT 프로젝트 정보 시스템 구축 관리(2) (0) | 2020.04.17 |
2020 정보처리기사 필기 - 5.2 IT 프로젝트 정보 시스템 구축 관리(1) (0) | 2020.04.17 |