🇰🇷 한글 설명
HtmlSanitizer는 XSS 공격을 방지하기 위해 HTML 조각을 정화하는 .NET 라이브러리입니다. 9.0.892 및 9.1.893-beta 이전 버전에서는 template 태그가 허용될 경우 그 내부 콘텐츠가 제대로 정화되지 않는 취약점이 존재합니다. 이 문제는 template 태그의 shadowrootmode 속성을 통해 악성 스크립트가 실행될 수 있는 위험을 초래합니다.
💡 쉬운 설명
웹사이트에서 위험한 코드를 걸러주는 도구가 특정 태그(template) 안에 숨겨진 악성 코드를 찾아내지 못하는 문제입니다. 공격자가 이 태그를 이용해 사용자의 정보를 훔치는 스크립트를 몰래 실행할 수 있습니다.
🇺🇸 원문 (English)
HtmlSanitizer is a .NET library for cleaning HTML fragments and documents from constructs that can lead to XSS attacks. Prior to versions 9.0.892 and 9.1.893-beta, if the template tag is allowed, its contents are not sanitized. The template tag is a special tag that does not usually render its contents, unless the shadowrootmode attribute is set to open or closed. This issue has been patched in versions 9.0.892 and 9.1.893-beta.
📍 영향받는 시스템
HtmlSanitizer versions prior to 9.0.892 and 9.1.893-beta
⚔️ 공격 벡터
template 태그 내부에 정화되지 않은 악성 스크립트를 삽입하여 XSS 공격 수행
🛡️ 대응 방법
HtmlSanitizer 라이브러리를 9.0.892 또는 9.1.893-beta 이상의 버전으로 업데이트
🔧 검증 코드
출력된 HtmlSanitizer의 버전이 9.0.892 또는 9.1.893-beta보다 낮은지 확인
dotnet list package | grep HtmlSanitizer