{"id":"GHSA-5jfw-gq64-q45f","summary":"HTML Cleaner allows crafted scripts in special contexts like svg or math to pass through","details":"### Impact\n\nThe HTML Parser in lxml does not properly handle context-switching for special HTML tags such as `\u003csvg\u003e`, `\u003cmath\u003e` and `\u003cnoscript\u003e`. This behavior deviates from how web browsers parse and interpret such tags. Specifically, content in CSS comments is ignored by lxml_html_clean but may be interpreted differently by web browsers, enabling malicious scripts to bypass the cleaning process. This vulnerability could lead to Cross-Site Scripting (XSS) attacks, compromising the security of users relying on lxml_html_clean in default configuration for sanitizing untrusted HTML content.\n\n### Patches\n\nUsers employing the HTML cleaner in a security-sensitive context should upgrade to lxml 0.4.0, which addresses this issue.\n\n### Workarounds\n\nAs a temporary mitigation, users can configure lxml_html_clean with the following settings to prevent the exploitation of this vulnerability:\n* `remove_tags`: Specify tags to remove - their content is moved to their parents' tags.\n* `kill_tags`: Specify tags to be removed completely.\n* `allow_tags`: Restrict the set of permissible tags, excluding context-switching tags like `\u003csvg\u003e`, `\u003cmath\u003e` and `\u003cnoscript\u003e`.\n\n### References\n\n* https://github.com/fedora-python/lxml_html_clean/pull/19\n* https://github.com/fedora-python/lxml_html_clean/pull/19/commits/c5d816f86eb3707d72a8ecf5f3823e0daa1b3808\n","aliases":["CVE-2024-52595","PYSEC-2024-160"],"modified":"2025-01-14T17:02:21.998272Z","published":"2024-11-19T21:07:59Z","database_specific":{"cwe_ids":["CWE-184","CWE-79","CWE-83"],"severity":"HIGH","github_reviewed":true,"github_reviewed_at":"2024-11-19T21:07:59Z","nvd_published_at":"2024-11-19T22:15:21Z"},"references":[{"type":"WEB","url":"https://github.com/fedora-python/lxml_html_clean/security/advisories/GHSA-5jfw-gq64-q45f"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-52595"},{"type":"WEB","url":"https://github.com/fedora-python/lxml_html_clean/pull/19"},{"type":"WEB","url":"https://github.com/fedora-python/lxml_html_clean/commit/c5d816f86eb3707d72a8ecf5f3823e0daa1b3808"},{"type":"PACKAGE","url":"https://github.com/fedora-python/lxml_html_clean"},{"type":"WEB","url":"https://github.com/pypa/advisory-database/tree/main/vulns/lxml-html-clean/PYSEC-2024-160.yaml"}],"affected":[{"package":{"name":"lxml-html-clean","ecosystem":"PyPI","purl":"pkg:pypi/lxml-html-clean"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.4.0"}]}],"versions":["0.1.0","0.1.1","0.2.0","0.2.1","0.2.2","0.3.0","0.3.1"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/11/GHSA-5jfw-gq64-q45f/GHSA-5jfw-gq64-q45f.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:H"}]}