신뢰할 수 없는 제어 영역의 기능 포함

설명

서드 파티 도메인에서 Sub-Resource Integrity (SRI)를 적용하지 않고 JavaScript 또는 CSS 소스 파일이 포함되어 있습니다. 해당하는 제어 영역의 사이트가 공격자에 의해 침입당하면, 악의적인 스크립트 또는 CSS 데이터를 주입하여 응용 프로그램의 사용자를 희생시키려 할 수 있습니다. 그러나 SRI를 적용했다면, 공격자가 스크립트 내용을 수정하려고 한다 하더라도 브라우저는 해당 스크립트를 로드하지 않고 악의적인 변경으로부터 응용 프로그램 사용자를 보호합니다.

복구

식별된 모든 자원은 대상 응용 프로그램과 동일한 도메인에서 가져와야 합니다. 이것이 불가능한 경우, ‘script’ 태그에 ‘src’ 값을 구현하거나 ‘link’ 태그에 ‘href’ 값을 구현하는 모든 script 태그 또는 link 태그는 Sub-Resource Integrity를 포함하는 것이 강력히 권장됩니다. SRI 무결성 값을 생성하기 위해서는 SRI 해시 도구를 사용하거나 다음 명령 중 하나를 실행할 수 있습니다:

  • cat FILENAME.js | openssl dgst -sha384 -binary | openssl base64 -A
  • shasum -b -a 384 FILENAME.js | awk '{ print $1 }' | xxd -r -p | base64

이러한 도구의 출력은 반드시 integritycrossorigin=anonymous 또는 crossorigin=use-credentials와 같은 추가 속성으로 추가되어야 합니다. 유효한 SRI로 보호된 스크립트 태그의 예시는 아래에서 찾을 수 있습니다:

<script src="https://example.com/example-framework.js"
    integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC"
    crossorigin="anonymous"></script>

세부 정보

ID Aggregated CWE Type Risk
829.1 true 829 Passive Low

링크