Skip to main content

xml_builder CVE-2026-47079

| EUVDEUVD-2026-63880 LOW
Inappropriate Encoding for Output Context (CWE-838)
2026-08-21 EEF
2.1
CVSS 4.0 · Vendor: EEF

Severity by source

Vendor (EEF) PRIMARY
2.1 LOW
CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:N/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
3.4 LOW

Network vector because attacker data typically arrives via network; High complexity and UI:R because exploit requires specific entity-token pattern plus a downstream markup-sensitive rendering step; Scope changed to subsequent system (browser/renderer); integrity-only impact.

3.1 AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:L/A:N
4.0 AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:N/SI:L/SA:N

Primary rating from Vendor (EEF).

CVSS VectorVendor: EEF

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

2
Source Code Evidence Fetched
Aug 21, 2026 - 10:39 vuln.today
Analysis Generated
Aug 21, 2026 - 10:39 vuln.today

DescriptionCVE.org

Inappropriate Encoding for Output Context vulnerability in joshnuss xml_builder (XmlBuilder module) allows Content Spoofing, Cross-site Scripting.

This vulnerability is associated with program files lib/xml_builder.ex and program routines XmlBuilder.generate/1, XmlBuilder.generate/2, XmlBuilder.escape_string/1, XmlBuilder.escape_entity/1.

XmlBuilder.generate/1 does not escape literal & characters in text or attribute values when they are followed by an entity-like token (lt;, gt;, amp;, quot;, apos;). As a result, attacker-supplied input such as &lt;script&gt; is emitted verbatim into the serialized XML rather than being escaped to &amp;lt;script&amp;gt;. When a downstream XML parser later reads the document, it decodes the entity sequences into the literal characters <script>, promoting inert-looking text into real markup. This allows an attacker to bypass upstream filters that block raw < and > characters, injecting markup into any downstream consumer that parses the produced XML and renders the text content in a markup-sensitive context (HTML, SVG, RSS/Atom feeds). Both element text and attribute values are affected.

This issue affects xml_builder: from 0.0.6 before 2.4.1.

AnalysisAI

Incorrect entity-passthrough logic in joshnuss xml_builder (Elixir) versions 0.0.6 through 2.4.0 allows attacker-supplied text containing pre-encoded entity sequences such as &lt;script&gt; to be emitted verbatim into serialized XML, rather than being double-encoded to &amp;lt;script&amp;gt;. When a downstream parser decodes the output and renders it in a markup-sensitive context - HTML, SVG, or RSS/Atom feeds - the entity sequences resolve into live markup, enabling content spoofing and cross-site scripting while bypassing upstream filters that block raw angle-bracket characters. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
technique details hidden
Delivery
technique details hidden
Exploit
technique details hidden
Execution
technique details hidden
Persist
technique details hidden
Impact
technique details hidden

Vulnerability AssessmentAI

Exploitation Three concurrent conditions must hold: (1) attacker-controlled input containing an ampersand followed by one of the recognized entity suffixes (lt;, gt;, amp;, quot;, or apos;) must be passed to XmlBuilder.generate/1 or XmlBuilder.generate/2 - input with raw < or > characters does not trigger the bypass; (2) the produced XML document must be consumed by a downstream parser that decodes XML entities and then renders the decoded text in a markup-sensitive context such as an HTML browser, SVG renderer, or RSS/Atom reader; and (3) the upstream input validation layer must not block or re-encode ampersand characters, leaving the entity-encoded payload intact. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The provided CVSS 4.0 score of 2.1 (AV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:N/SI:L/SA:N) correctly reflects a narrow, low-severity integrity issue: no impact on the vulnerable system itself, only low integrity impact on subsequent systems (SI:L), and attack requirements present (AT:P). … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario Full exploit scenario with step-by-step reproduction available after sign-in.
Remediation Upgrade xml_builder to version 2.4.1 or later; the fix is confirmed in upstream commit c3390e2046ec297b3bb8c30d5779cdfd6508c275 (https://github.com/joshnuss/xml_builder/commit/c3390e2046ec297b3bb8c30d5779cdfd6508c275), which removes the flawed escape_entity/1 dispatcher and ensures every bare ampersand is unconditionally escaped to &amp;. … Detailed patch versions, workarounds, and compensating controls in full report.

Threat intelligence, references, and detailed analysis are available after sign-in.

Share

CVE-2026-47079 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy