Docling Core RCE Bug: PyYAML Dependency a Major Risk

Docling Core RCE Bug: PyYAML Dependency a Major Risk

CVE Notify is flagging a serious Remote Code Execution (RCE) vulnerability within the Docling Core library, specifically impacting versions 2.21.0 up to, but not including, 2.48.4. The root cause? A dependency on PyYAML and its improper handling of untrusted YAML data. This bug, essentially an exposure of CVE-2020-14343, hinges on a specific condition: the application must be using PyYAML before version 5.4 and then call the docling_core.types.doc.DoclingDocument.load_from_yaml() function with malicious input. It’s a classic case of a vulnerable dependency creating a backdoor.

The good news, relatively speaking, is that the Docling Core team has patched this in version 2.48.4. Their fix is a smart one: they’ve switched PyYAML deserialization from the permissive yaml.FullLoader to the much safer yaml.SafeLoader. This change effectively neuters the exploit by preventing untrusted data from executing arbitrary code. For those unable to upgrade Docling Core immediately, CVE Notify points out that ensuring your PyYAML version is 5.4 or newer also serves as a solid workaround.

What This Means For You

  • Security teams must audit their dependencies, especially libraries like Docling Core that process potentially untrusted input. Prioritize upgrading both the core library and its underlying dependencies (like PyYAML) to their latest patched versions to mitigate known RCE vectors.

Related ATT&CK Techniques

Indicators of Compromise

IDTypeIndicator
CVE-2026-24009 Deserialization docling-core versions prior to 2.48.4, specifically when using PyYAML prior to 5.4 and invoking docling_core.types.doc.DoclingDocument.load_from_yaml() with untrusted YAML data.
CVE-2026-24009 RCE docling-core versions prior to 2.48.4, specifically when using PyYAML prior to 5.4 and invoking docling_core.types.doc.DoclingDocument.load_from_yaml() with untrusted YAML data.
CVE-2026-24009 Misconfiguration docling-core versions prior to 2.48.4, specifically when using PyYAML prior to 5.4 and invoking docling_core.types.doc.DoclingDocument.load_from_yaml() with untrusted YAML data.
πŸ›‘οΈ
Want the IOCs from this threat? Get structured IOC exports and weekly threat briefs β€” delivered instantly to your Telegram.
Get My Intel β†’