<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Validation-Model (&gt;= 1.31.1, &lt;= 1.31.70) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/validation-model--1.31.1--1.31.70/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Wed, 29 Jul 2026 15:14:37 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/validation-model--1.31.1--1.31.70/feed.xml" rel="self" type="application/rss+xml"/><item><title>veraPDF Validation XXE via Rich Text</title><link>https://feed.craftedsignal.io/briefs/2026-07-verapdf-xxe/</link><pubDate>Wed, 29 Jul 2026 15:14:37 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-07-verapdf-xxe/</guid><description>An XML External Entity (XXE) injection vulnerability (CVE-2026-54078, CWE-611) in the veraPDF-validation library's `validation-model` module allows a remote attacker to read arbitrary files from the server's file system and perform Server-Side Request Forgery by submitting a crafted PDF containing a malicious rich-text entry, which is then parsed by an insecure `DocumentBuilderFactory`.</description><content:encoded><![CDATA[<p>A critical XML External Entity (XXE) injection vulnerability, identified as CVE-2026-54078 (CWE-611), has been discovered in the veraPDF-validation library. This vulnerability specifically impacts the <code>validation-model</code> module across all current versions of veraPDF-validation. Exploitation occurs when a remote attacker crafts a malicious PDF document that includes a specially designed rich-text entry (<code>/RC</code> or <code>/RV</code>). When this crafted PDF is processed by the vulnerable veraPDF instance, an insecurely configured <code>DocumentBuilderFactory</code> within the <code>getRichTextStringOrStreamEntryStringRepresentation()</code> method fails to disable external entity resolution or DOCTYPE declarations. This allows the attacker to read arbitrary files from the server's file system and initiate Server-Side Request Forgery (SSRF) attacks, exposing sensitive information and potentially leading to further compromise of the internal network.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker crafts a malicious PDF document containing a rich-text entry (e.g., <code>/RC</code> or <code>/RV</code>).</li>
<li>The rich-text entry embeds XML data that includes an external entity declaration, such as <code>&lt;!DOCTYPE foo [&lt;!ENTITY xxe SYSTEM &quot;file:///etc/passwd&quot;&gt;]&gt;</code> or <code>&lt;!ENTITY xxe SYSTEM &quot;http://internal-host/admin&quot;&gt;]</code>.</li>
<li>The attacker delivers this crafted PDF to a target system that uses <code>veraPDF-validation</code> to process or validate PDF files.</li>
<li>The <code>veraPDF-validation</code> library, specifically the <code>getRichTextStringOrStreamEntryStringRepresentation()</code> method in <code>validation-model/src/main/java/org/verapdf/gf/model/tools/DictionaryKeysHelper.java</code>, attempts to parse the embedded XML.</li>
<li>Due to the <code>DocumentBuilderFactory</code> being instantiated with default, insecure settings (no <code>disallow-doctype-decl</code>, no disabling of external entities, no secure <code>EntityResolver</code>), the XML parser resolves the external entity.</li>
<li>The content of the specified external resource (e.g., <code>/etc/passwd</code> or the response from <code>http://internal-host/admin</code>) is retrieved by the vulnerable veraPDF application.</li>
<li>The <code>getAllNodeText()</code> method recursively concatenates all text nodes, including the expanded content of the external entity.</li>
<li>The sensitive data or response from the SSRF attempt is reflected directly into the validation report or the output generated by veraPDF, allowing the attacker to exfiltrate it.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of CVE-2026-54078 allows a remote attacker to read arbitrary files from the compromised server's file system, potentially exfiltrating sensitive data such as configuration files, user credentials, or application source code. Additionally, the Server-Side Request Forgery (SSRF) capability enables the attacker to initiate requests to internal network resources, bypassing firewall rules and potentially gaining access to internal services or hosts that are not directly exposed to the internet. This could lead to further reconnaissance, lateral movement, or data exfiltration from the internal infrastructure. All current releases of the veraPDF <code>validation-model</code> module are affected, meaning a wide range of systems performing PDF validation are vulnerable to this attack.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Patch CVE-2026-54078 immediately by updating <code>maven/org.verapdf:validation-model</code> and <code>maven/org.verapdf:validation-model-jakarta</code> to a fixed version as soon as one is available.</li>
<li>Implement secure XML parsing practices in applications handling untrusted XML, specifically hardening <code>DocumentBuilderFactory</code> configurations to disallow DOCTYPE declarations and external entity resolution.</li>
<li>Monitor application logs for unusual file access patterns or outbound connections initiated by the veraPDF process that could indicate successful SSRF or file exfiltration attempts related to the vulnerability described in this brief.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>xml-external-entity-injection</category><category>xxe</category><category>server-side-request-forgery</category><category>ssrf</category><category>pdf</category><category>java</category></item></channel></rss>