<?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/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>Docx4j - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/vendors/docx4j/</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>Tue, 18 Aug 2026 00:46:45 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/vendors/docx4j/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>Denial of Service in docx4j-core via Cyclic Style Inheritance</title><link>https://feed.craftedsignal.io/briefs/2026-08-docx4j-dos/</link><pubDate>Tue, 18 Aug 2026 00:46:45 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-docx4j-dos/</guid><description>The docx4j-core library is vulnerable to a stack exhaustion denial-of-service attack due to missing cycle detection in the OpenXML style resolution process.</description><content:encoded><![CDATA[<p>The docx4j-core library, specifically versions up to 11.5.13, contains a vulnerability in the <code>PropertyResolver</code> class that leads to a <code>java.lang.StackOverflowError</code> when parsing WordprocessingML documents. The issue stems from the library's recursive processing of the <code>w:basedOn</code> style inheritance chain without implementing cycle detection. By crafting a DOCX file with cyclic style references, such as Style A inheriting from Style B and Style B inheriting from Style A, an attacker can induce unbounded recursion. This attack pattern triggers immediate thread-stack exhaustion upon processing, which can lead to service degradation or process crashes in server-side applications that utilize docx4j for document transformation, conversion, or content extraction. Because the exploit relies on standard OOXML structure, it often bypasses conventional signature-based file scanners and endpoint security controls.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker prepares a malicious WordprocessingML (.docx) file containing custom XML styles.</li>
<li>Within the document settings, the attacker defines Style A with a <code>w:basedOn</code> attribute pointing to Style B.</li>
<li>The attacker defines Style B with a <code>w:basedOn</code> attribute pointing back to Style A, creating a circular reference.</li>
<li>The malicious file is uploaded to a target server-side application (e.g., document converter, web portal, or email processor).</li>
<li>The target application passes the document to the vulnerable <code>docx4j-core</code> library for rendering or property extraction.</li>
<li>The <code>PropertyResolver</code> attempts to resolve effective styles by recursively calling <code>fillPPrStack</code> for the cyclic chain.</li>
<li>The Java Virtual Machine terminates the processing thread due to a <code>java.lang.StackOverflowError</code> caused by the recursion depth.</li>
<li>The application worker thread crashes, potentially leading to resource exhaustion or denial of service for other users.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation results in a denial of service for the document processing pipeline. Observed impact includes the immediate termination of worker threads, which can lead to total service unavailability if the application lacks robust request isolation or thread management. This vulnerability primarily affects enterprise applications in sectors such as document management, legal tech, and collaborative platforms where untrusted DOCX file submission is a core feature. The impact is elevated in environments using containerized or serverless architectures where crashes may trigger frequent, costly restarts or cascading failures across internal dependencies.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade <code>docx4j-core</code> to a version that includes a fix for CVE-2026-53752.</li>
<li>Implement input validation for uploaded files to detect cyclic <code>w:basedOn</code> references within the XML structure of the document before passing them to the rendering engine.</li>
<li>Execute document conversion tasks within sandboxed or ephemeral environments that limit the impact of process crashes on the main application.</li>
<li>Monitor application logs for <code>java.lang.StackOverflowError</code> exceptions associated with document parsing or transformation modules.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>denial-of-service</category><category>library-vulnerability</category><category>java</category></item></channel></rss>