Round-trip Corruption via Improper Entity Escaping in xml_builder
Key facts
- Attack vector
- Local
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- —
- Confidentiality · integrity · availability
- None · None · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA.
Summary
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 <script> is emitted verbatim into the serialized XML rather than being escaped to &lt;script&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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
- Fix · CNA xml_builder (joshnuss) Fixed in 2.4.1
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
joshnuss xml_builder 2.4.1
3 records Highest priority Priority MEDIUM 3 MEDIUM
Other records, highest priority first
- TI-2026-35946 Element and Attribute Names Injected Verbatim into XML Output in xml_builderPriority MEDIUM 44
- TI-2026-34682 CDATA Section Breakout via Unsanitised ]]> in xml_builderPriority MEDIUM 44
Timeline
- 2026-10-02 Threatist record created from CVE-2026-47079
References
More joshnuss vulnerabilities
- TI-2026-35946 Element and Attribute Names Injected Verbatim into XML Output in xml_builder CVSS 4.0LOW 2.1
- TI-2026-34682 CDATA Section Breakout via Unsanitised ]]> in xml_builder CVSS 4.0LOW 2.1
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences