SW Engineering · 한장정리
[기술사토픽] Secure SDLC & 위협 모델링 완벽 정리 - 한장정리
MS-SDL·CLASP 등 Secure SDLC 모델, STRIDE 위협 분류, DREAD 위험 평가까지 기술사 빈출 주제를 완벽 정리합니다.
Ⅰ.보안 내재화 개발 방법론, Secure SDLC의 개요
개념: Secure SDLC는 SW 개발 생명주기 전 단계에 보안 활동을 통합하여, 개발 완료 후 보안 취약점을 제거하는 것이 아니라 설계 단계부터 보안을 내재화하는 방법론입니다.
필요성: 개발 완료 후 취약점 발견 시 수정 비용은 설계 단계 대비 30~100배 증가. 침해사고의 90% 이상이 알려진 취약점에서 발생.
가. 대표 Secure SDLC 모델
| 모델 | 제안 기관 | 특징 | 핵심 활동 |
|---|---|---|---|
| MS-SDL | Microsoft | 단계별 보안 게이트 | 위협모델링·정적분석·퍼징 |
| CLASP | OWASP | 역할 기반 보안 프로세스 | 보안 요구사항·코드리뷰 |
| BSIMM | SEI | 산업 보안성숙도 측정 | 보안 측정·벤치마킹 |
| Seven Touchpoints | McGraw | 아티팩트별 보안 활동 7개 | 위험분석·코드리뷰·테스트 |
시험 포인트
Secure SDLC 핵심: 보안을 사후 패치가 아닌 설계에 내재화(Security by Design)
MS-SDL = Microsoft Security Development Lifecycle — 가장 많이 출제되는 모델.
Ⅱ.보안 취약점 사전 식별 — 위협 모델링
구성도
요구사항
보안 요구사항 명세
개인정보·규제 요건
개인정보·규제 요건
↓ 위협 모델링
설계 단계
STRIDE 위협 모델링
공격 표면 분석·보안 패턴 적용
공격 표면 분석·보안 패턴 적용
↓ 구현·테스트
보안 코딩
OWASP Secure Coding
SAST·코드 리뷰
SAST·코드 리뷰
보안 테스트
DAST·퍼징·침투 테스트
취약점 수정 검증
취약점 수정 검증
운영 보안
패치 관리·모니터링
인시던트 대응
인시던트 대응
위협 모델링(Threat Modeling)은 시스템에 존재하는 잠재적 보안 위협을 설계 단계에서 체계적으로 식별·분석·대응하는 기법입니다.
가. STRIDE 위협 분류 모델
| 위협 | 영어 | 위반 속성 | 예시 |
|---|---|---|---|
| S — 스푸핑 | Spoofing | 인증(Authentication) | 세션 하이재킹, 피싱 |
| T — 변조 | Tampering | 무결성(Integrity) | DB 데이터 위·변조 |
| R — 부인 | Repudiation | 부인방지(Non-repudiation) | 거래 기록 삭제 |
| I — 정보누출 | Information Disclosure | 기밀성(Confidentiality) | SQL 인젝션으로 DB 노출 |
| D — 서비스거부 | Denial of Service | 가용성(Availability) | DDoS 공격 |
| E — 권한상승 | Elevation of Privilege | 인가(Authorization) | 관리자 권한 탈취 |
나. DREAD 위험 평가 모델
| 요소 | 설명 |
|---|---|
| Damage(피해) | 공격 성공 시 피해 규모 |
| Reproducibility(재현성) | 공격 재현 가능성 |
| Exploitability(공격용이성) | 공격에 필요한 기술 수준 |
| Affected users(영향 사용자) | 영향받는 사용자 비율 |
| Discoverability(발견용이성) | 취약점 발견 가능성 |
시험 포인트
STRIDE: S·T·R·I·D·E 6가지 위협 유형 암기 필수! 각각 위반하는 보안 속성(CIA+AAN)과 매핑해서 기억.
Ⅲ.결론
결론
Secure SDLC는 보안 비용을 최소화하면서 안전한 SW를 개발하는 핵심 방법론입니다.
향후 DevSecOps(CI/CD 파이프라인에 보안 통합), AI 기반 자동 위협 모델링으로 발전합니다.
"보안은 제품의 기능이 아니라 설계의 속성이다. 나중에 추가하면 너무 늦다." — Gary McGraw
블로그: 기술사 학습노트 · imt-log.tistory.com
'소프트웨어공학' 카테고리의 다른 글
| 오라클 문제의 극복: 돌연변이(Mutation) 및 메타모픽 테스트 기법과 커버리지 포섭 관계 (0) | 2026.04.13 |
|---|---|
| ISO 9126과 14598의 대통합: ISO 25000(SQuaRE) 5대 디비전 체계와 8대 품질 특성 (1) | 2026.04.12 |
| REST·GraphQL·API 설계 원칙과 버전 관리 정리 (0) | 2026.04.12 |
| 데이터센터 PUE와 그린 데이터센터 에너지 효율 정리 (0) | 2026.04.10 |
| 소프트웨어 ESG 핵심 정리와 지속가능 IT 거버넌스 전략 (1) | 2026.04.09 |