VDB
EN

EEF-CVE-2026-66843

html_sanitize_ex HTML5 scrubber keeps attacker-supplied `<object>` elements, allowing untrusted content embedding

빠른 조치

EEF-CVE-2026-66843 — html_sanitize_ex: 아래 명령으로 수정 버전으로 올리세요.

mix deps.update html_sanitize_ex

상세

## Summary

Inclusion of Functionality from Untrusted Control Sphere vulnerability in the HTML5 scrubber in rrrene html\_sanitize\_ex allows a remote attacker to load a document of their choosing into a trusted page via the data attribute of an <object> element in sanitized HTML. object is the one URI-bearing element in lib/html\_sanitize\_ex/scrubber/html5.ex never registered through allow\_tag\_with\_uri\_attributes/3, and its only guard is a prefix match on lowercase "javascript:", so mixed-case variants, data: URIs, protocol-relative URLs and same-origin paths all survive.

This is not unconditional cross-site scripting. A javascript: URL does not execute through <object data> in current browsers, data: documents load in an opaque origin, and host-origin script execution additionally requires the application to serve attacker-controlled content from a same-origin path.

This issue affects html\_sanitize\_ex: from 0.3.1 before 1.5.3.

## Workaround

Sanitize with basic\_html/1, markdown\_html/1 or strip\_tags/1, none of which allow object, or define a custom scrubber that omits it.

A Content-Security-Policy of object-src 'none' blocks an injected <object> from loading, and hosting user uploads on a separate origin removes the escalation path.

## Configuration

Only HtmlSanitizeEx.html5/1, and custom scrubbers declared with use HtmlSanitizeEx, extend: :html5, allow the object element, and the sanitized output must be rendered to other users.

Script execution in the host origin additionally requires the application to serve attacker-controlled HTML from a same-origin path, such as an uploads directory served as text/html.

이 버전이 영향받나요?

사용 중인 패키지 버전을 입력하면 즉시 평가합니다.

영향 패키지

Hex / html_sanitize_ex
최초 영향 버전: 0.3.1 수정 버전: 1.5.3
수정 mix deps.update html_sanitize_ex

참고