style-srcstyle-src 는 스타일시트와 인라인 CSS 소스를 제어합니다. 외부 <link rel=stylesheet>, <style> 블록, style= 인라인 속성, CSSOM API(insertRule 등)를 모두 관장합니다. 미지정 시 default-src 를 상속합니다.
script-src 와 유사하게 'self', 호스트/스킴 소스, 'unsafe-inline', 'nonce-...', 'sha256-...' 를 지원합니다. CSS는 스크립트보다 위험이 낮아 보이지만, 인라인 스타일을 통한 데이터 유출(스타일 인젝션으로 CSS 선택자·background:url() 을 이용해 폼 값을 탈취)이나 UI 리드레싱 공격이 가능하므로 'unsafe-inline' 은 여전히 신중해야 합니다. Google Fonts 처럼 외부 스타일이 필요하면 해당 호스트를 명시하고, 인라인 스타일은 nonce·hash 로 개별 허용하는 것이 안전합니다.
다만 실무에서는 인라인 style= 속성을 완전히 제거하기 어려워 style-src 에 'unsafe-inline' 을 두는 경우가 많습니다. 이때 script-src 만이라도 nonce/hash 로 엄격히 잠그면 XSS 위험의 대부분을 통제할 수 있습니다. 세분화가 필요하면 style-src-elem(스타일시트 요소)과 style-src-attr(인라인 style 속성)로 나눌 수 있습니다.
Content-Security-Policy: style-src 'self' 'nonce-r4nd0m' https://fonts.googleapis.com