base-uribase-uri 는 문서의 <base> 요소가 설정할 수 있는 기준 URL 을 제한합니다. <base href> 는 페이지 내 모든 상대 URL 의 해석 기준을 바꾸므로, 공격자가 주입한 <base> 로 리소스 경로를 통째로 탈취하는 것을 막습니다. 이 지시어는 default-src 로 폴백되지 않습니다.
만약 XSS 로 <base href="https://evil.example/"> 가 주입되면, 이후 로드되는 모든 상대 경로 스크립트·이미지·링크의 기준이 공격자 도메인으로 바뀌어 리소스 하이재킹이나 nonce 기반 CSP 우회로 이어질 수 있습니다. base-uri 'self'(또는 'none')로 제한하면 이런 base 인젝션 공격을 봉쇄할 수 있습니다.
중요한 점은 base-uri 가 default-src 를 상속하지 않는다는 것입니다. base-uri·form-action·frame-ancestors·sandbox·report-* 는 default-src 폴백 대상이 아니므로, default-src 'self' 만 설정하면 base-uri 는 무제한 상태로 남습니다. 그래서 Google 의 엄격 CSP 권장안은 base-uri 'self' 를 script-src nonce, object-src 'none' 과 함께 3대 필수로 명시합니다.
Content-Security-Policy: base-uri 'self'