script-src-attrscript-src-attr 은 인라인 이벤트 핸들러 속성(onclick, onload 등 on* 속성)의 JavaScript 실행만 제어하는 세분화된 지시어입니다. <script> 요소는 담당하지 않습니다. 미지정 시 script-src → default-src 순으로 폴백합니다.
인라인 이벤트 핸들러는 대표적인 XSS 주입 지점입니다. script-src-attr 'none' 으로 설정하면 HTML 속성에 삽입된 자바스크립트(예: <img onerror="payload">)의 실행을 전면 차단할 수 있어, 마크업 인젝션 공격을 크게 줄입니다. 반대로 script-src-attr 'unsafe-inline' 은 이런 핸들러를 허용하므로 위험합니다.
이 지시어는 특히 레거시 코드가 인라인 이벤트 핸들러에 의존할 때 유용합니다. 스크립트 파일 로딩(script-src-elem)은 nonce 로 엄격히 열어두면서, 인라인 핸들러만 'none' 으로 막아 공격면을 줄이는 조합이 이상적입니다. 다만 기존 코드가 onclick 등을 많이 쓰면 addEventListener 로 마이그레이션한 뒤 적용해야 기능이 깨지지 않습니다.
Content-Security-Policy: script-src-attr 'none'