웹 보안에서 가장 흔히 발생하는 공격 중 하나는 XSS(Cross-Site Scripting)입니다.
사용자가 입력한 악성 스크립트가 그대로 실행되면, 쿠키 탈취나 세션 하이재킹이 가능해집니다.
이 문제를 막기 위한 대표적인 방법이 바로 CSP(Content-Security-Policy)입니다.
Content-Security-Policy는 브라우저에게 "이 사이트에서 어떤 리소스를 불러올 수 있는지"를 지정하는 보안 정책입니다.
즉, 허용된 출처(도메인)에서만 스크립트, 이미지, 스타일 등을 로드하도록 강제합니다.
script-src)style-src)img-src, media-src)frame-ancestors)Content-Security-Policy: default-src 'self'; img-src https://images.example.com; script-src 'self' https://cdn.example.com
기본은 자기 자신('self')
이미지는 images.example.com에서만
스크립트는 자기 자신 + CDN만
XSS 공격 차단 효과
리소스 로딩 통제
보안 정책 가시화
CSP는 브라우저 수준에서 동작하는 강력한 보안 방어막
XSS와 같은 웹 공격을 크게 줄일 수 있음
하지만 정책 설정이 까다롭기 때문에 점진적으로 적용하는 것이 권장됨