보안 · 심화
DevSecOps 라이프사이클 전반에 걸쳐 위협 모델링(Threat Modeling)을 효과적으로 통합하는 전략에 대해 설명하고, 특히 설계 단계에서 STRIDE 모델을 활용하여 식별된 위협들을 어떻게 구체적인 보안 요구사항으로 전환하고, 구현 및 테스트 단계에서 해당 요구사항이 충족되었는지 검증할 수 있는지 프로세스를 설명해 주십시오.
힌트 · 개발 초기 단계 위협 식별, 보안 요구사항으로 전환, SAST/DAST/Penetration Testing 연동, 자동화된 검증 프로세스를 포함해야 합니다.
STRIDE보안 요구사항위협 식별검증DevSecOps
모범답안
DevSecOps 라이프사이클에서 위협 모델링은 개발 초기부터 보안을 내재화하는 핵심입니다. 설계 단계에서는 STRIDE 모델을 활용하여 위협을 체계적으로 식별합니다. 예를 들어, 'Spoofing' 위협을 식별했다면, 이를 '사용자 인증 메커니즘 강화'와 같은 구체적인 보안 요구사항으로 전환합니다.
구현 단계에서는 SAST(정적 분석 보안 테스트) 도구를 사용하여 코드 레벨에서 이러한 요구사항이 제대로 반영되었는지 검증합니다. DAST(동적 분석 보안 테스트)는 실행 중인 애플리케이션의 취약점을 찾아내어 설계 단계에서 놓친 위협을 추가로 식별하고, 이는 다시 보안 요구사항으로 업데이트됩니다.
테스트 단계에서는 모의 해킹(Penetration Testing)을 통해 실제 공격 시나리오를 시뮬레이션하며, 앞서 정의된 보안 요구사항들이 효과적으로 충족되었는지 최종 검증합니다. 이 모든 과정은 자동화된 파이프라인에 통합되어 지속적인 보안 검증을 가능하게 합니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 OWASP / 취약점 면접 질문
- 대규모 마이크로서비스 아키텍처 환경에서 OWASP Top 10 취약점을 효과적으로 방어하기 위한 아키텍처 설계 원칙과 DevSecOps 파이프라인 통합 전략에 대해 설명하고, 특히 A01:2021-Broken Access Control과 A05:2021-Security Misconfiguration을 예시로 들어 구체적인 방안을 제시해 주십시오.
- OWASP API Security Top 10에서 가장 빈번하게 발생하는 A01:2023-Broken Object Level Authorization (BOLA)과 A02:2023-Broken Function Level Authorization (BFLA) 취약점을 방지하기 위한 설계 및 구현 시 고려해야 할 심층적인 방안들을 설명하고, 특히 다중 테넌트(Multi-tenant) 환경에서의 적용 방안을 제시해 주십시오.
- 안전하지 않은 역직렬화(A08:2021-Software and Data Integrity Failures의 일부) 취약점이 애플리케이션에 미치는 심각한 영향에 대해 설명하고, 이를 방지하기 위한 실제 개발 환경에서의 효과적인 코딩 가이드라인 및 아키텍처적 방어 전략을 제시해 주십시오.
- 최신 웹 애플리케이션 환경에서 Reflected, Stored, DOM XSS 및 CSRF 공격을 방어하기 위한 기존의 방어 기법(필터링, 토큰 등) 외에, Content Security Policy (CSP), SameSite 쿠키 속성, Subresource Integrity (SRI)와 같은 고급 보안 메커니즘을 어떻게 통합하여 다층 방어 체계를 구축할 수 있는지 설명해 주십시오.
- 컨테이너 기반 마이크로서비스 환경에서 OWASP Docker Top 10 취약점(예: A01:2021-Container with too many privileges, A03:2021-Image with known vulnerabilities)을 방어하기 위한 이미지 빌드 단계부터 런타임 단계까지의 보안 전략과 CI/CD 파이프라인 통합 방안을 설명해 주십시오.
- 서버리스 아키텍처(예: AWS Lambda) 환경에서 OWASP Serverless Top 10에 명시된 주요 취약점(예: A01:2019-Injection, A02:2019-Broken Authentication)을 방어하기 위한 아키텍처 설계 원칙과 개발 시 고려해야 할 보안 모범 사례에 대해 설명해 주십시오.