최신 웹 애플리케이션 환경에서 Reflected, Stored, DOM XSS 및 CSRF 공격을 방어하기 위한 기존의 방어 기법(필터링, 토큰 등) 외에, Content Security Policy (CSP), SameSite 쿠키 속성, Subresource Integrity (SRI)와 같은 고급 보안 메커니즘을 어떻게 통합하여 다층 방어 체계를 구축할 수 있는지 설명해 주십시오.
힌트 · CSP를 통한 스크립트 실행 제어, SameSite 쿠키를 통한 CSRF 방어, SRI를 통한 외부 스크립트 무결성 검증 등 다층적 방어 전략을 제시해야 합니다.
모범답안
"최신 웹 애플리케이션 보안을 위해 XSS와 CSRF 공격 방어에 CSP, SameSite 쿠키, SRI를 통합하여 다층 방어 체계를 구축할 수 있습니다.
CSP는 허용된 스크립트 소스를 명시하여 XSS 공격 시 악성 스크립트 실행을 차단합니다. 예를 들어, 'script-src 'self' https://example.com' 와 같이 설정하여 신뢰할 수 있는 출처의 스크립트만 실행하도록 제한합니다.
SameSite 쿠키 속성은 CSRF 공격 방지에 효과적입니다. 'Strict' 또는 'Lax' 설정을 통해 Cross-Site 요청에서 쿠키 전송을 제한하여 공격자가 위조된 요청을 보내더라도 서버가 이를 처리하지 않도록 합니다.
SRI는 CDN 등 외부 리소스의 무결성을 검증하여 변조된 스크립트 실행을 방지합니다. <script src="https://example.com/script.js" integrity="sha384-xxxxxxxx" crossorigin="anonymous"></script> 와 같이 해시값을 명시하여 리소스가 변경되었을 경우 브라우저가 실행을 중단하도록 합니다.
이러한 고급 메커니즘들을 기존의 필터링, 토큰 방식과 함께 사용하면 더욱 강력하고 안전한 웹 애플리케이션을 구축할 수 있습니다."
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 OWASP / 취약점 면접 질문
- 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의 일부) 취약점이 애플리케이션에 미치는 심각한 영향에 대해 설명하고, 이를 방지하기 위한 실제 개발 환경에서의 효과적인 코딩 가이드라인 및 아키텍처적 방어 전략을 제시해 주십시오.
- DevSecOps 라이프사이클 전반에 걸쳐 위협 모델링(Threat Modeling)을 효과적으로 통합하는 전략에 대해 설명하고, 특히 설계 단계에서 STRIDE 모델을 활용하여 식별된 위협들을 어떻게 구체적인 보안 요구사항으로 전환하고, 구현 및 테스트 단계에서 해당 요구사항이 충족되었는지 검증할 수 있는지 프로세스를 설명해 주십시오.
- 컨테이너 기반 마이크로서비스 환경에서 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)을 방어하기 위한 아키텍처 설계 원칙과 개발 시 고려해야 할 보안 모범 사례에 대해 설명해 주십시오.