
신뢰할 수 없는 SVG 파일을 안전하게 제공하도록 만드세요
이 도구의 목표는 임의의 SVG 파일을 다른 일반적인 웹 파일 형식의 이미지처럼 제공해도 무해하고 안전하게 만드는 것입니다. SVG 파일은 단순한 이미지가 아니라 HTML과 JavaScript의 모든 기능에 완전히 접근할 수 있는 문서입니다. 이 도구는 SVG 파일을 필터링하여 잠재적으로 위험한 기능의 사용을 제거합니다.
스크립팅을 제거합니다. SVG 파일이 크로스 사이트 스크립팅 공격에 사용되는 것을 방지합니다. 브라우저는 `` 내의 스크립트를 허용하지 않지만, SVG 파일이 최상위 문서로 직접 열릴 때는 스크립팅을 허용합니다.
다른 도메인의 문서로 향하는 하이퍼링크를 제거합니다. SVG 파일이 SEO 스팸과 피싱에 덜 매력적으로 만듭니다.
교차 출처 리소스에 대한 참조를 제거합니다. 제3자가 누가 이미지를 보고 있는지 추적하는 것을 막습니다.
이 도구는 허용 목록에 없는 모든 요소와 속성을 제거하고, 모든 URL을 동일 출처 전용(호스트 이름이 없는 경로)으로 필터링합니다. 일부 SVG 이미지가 깨질 수 있습니다. 이미지가 지나치게 엄격하게 필터링되는 경우 버그를 신고해 주세요!
이 도구는 불필요한 군더더기를 제거하여 SVG 파일의 크기를 줄일 수도 있지만, SVG 최적화 도구를 목적으로 하지는 않습니다. svg-hush를 SVG 최적화 도구와 함께 사용해도 안전합니다.
이 필터링과 무관하게, SVG 이미지는 제한적인 Content-Security-Policy와 함께 제공하는 것이 가장 좋습니다. 이 도구는 CSP 헤더가 지원되지 않거나, 유실되거나, 우회될 수 있는 경우(예: 서버/CMS 오설정 또는 헤더를 전달하지 않는 ServiceWorker로 인해)를 위한 심층 방어(defense-in-depth)입니다.
DOCTYPE은 허용되지 않습니다. 내부 서브셋(internal subset)은 지원됩니다.