Content-Security-Policy (CSP)
XSS를 줄이기 위해 ‘어떤 리소스를 어디서 로드해도 되는지’를 선언하는 보안 정책(HTTP 헤더)
Content-Security-Policy(CSP)는 브라우저에게 “이 사이트는 어떤 스크립트/스타일/이미지/프레임을 어떤 출처에서만 로드할 수 있는지”를 알려주는 정책입니다. XSS(스크립트 삽입) 피해를 크게 줄일 수 있습니다.
핵심 포인트
- CSP는 “취약점을 없애는” 게 아니라, 피해 확산을 줄이는 안전장치입니다.
- 운영에서는
Content-Security-Policy-Report-Only로 먼저 관측 후 강화하는 흐름이 안전합니다.
자주 쓰는 디렉티브
default-src: 기본 출처script-src: 스크립트 출처 (가능하면nonce/hash기반)style-src: 스타일 출처img-src: 이미지 출처connect-src: fetch/XHR/WebSocket 등 네트워크 연결 출처frame-ancestors: 어떤 사이트가 우리 페이지를 iframe으로 감쌀 수 있는지
예시
Content-Security-Policy: default-src 'self'; img-src 'self' https: data:; script-src 'self';