CVE-2026-24009: CWE-502: Deserialization of Untrusted Data in docling-project docling-core
Docling Core (or docling-core) is a library that defines core data types and transformations in the document processing application Docling. A PyYAML-related Remote Code Execution (RCE) vulnerability, namely CVE-2020-14343, is exposed in docling-core starting in version 2.21.0 and prior to version 2.48.4, specifically only if the application uses pyyaml prior to version 5.4 and invokes `docling_core.types.doc.DoclingDocument.load_from_yaml()` passing it untrusted YAML data. The vulnerability has been patched in docling-core version 2.48.4. The fix mitigates the issue by switching `PyYAML` deserialization from `yaml.FullLoader` to `yaml.SafeLoader`, ensuring that untrusted data cannot trigger code execution. Users who cannot immediately upgrade docling-core can alternatively ensure that the installed version of PyYAML is 5.4 or greater.
AI Analysis
Technical Summary
CVE-2026-24009 is a deserialization vulnerability classified under CWE-502 affecting the docling-core library, a component used in the Docling document processing application. The vulnerability stems from the use of PyYAML's FullLoader to deserialize YAML input in the method DoclingDocument.load_from_yaml(), which can lead to remote code execution if untrusted YAML data is processed. This issue is present in docling-core versions starting from 2.21.0 up to 2.48.4, specifically when PyYAML versions prior to 5.4 are used. PyYAML's FullLoader allows execution of arbitrary Python objects during deserialization, which attackers can exploit by crafting malicious YAML payloads. The vulnerability is mitigated in docling-core 2.48.4 by switching to PyYAML's SafeLoader, which restricts deserialization to safe Python objects, preventing code execution. Alternatively, upgrading PyYAML to version 5.4 or later also addresses the issue by defaulting to SafeLoader. The CVSS v3.1 score of 8.1 reflects the high impact and network attack vector, with no privileges or user interaction required, but with high attack complexity due to the need to supply malicious YAML input. No known exploits have been reported in the wild to date. This vulnerability poses a significant risk to applications that process untrusted YAML data using vulnerable docling-core versions, potentially allowing attackers to execute arbitrary code remotely, leading to full system compromise.
Potential Impact
For European organizations, this vulnerability could have severe consequences, especially for those relying on docling-core for document processing workflows. Successful exploitation can lead to remote code execution, allowing attackers to compromise confidentiality by accessing sensitive documents, integrity by altering document data or processing logic, and availability by disrupting services or deploying ransomware. Industries such as finance, legal, healthcare, and government, which often handle sensitive documents and may use automated document processing, are particularly at risk. The vulnerability's network attack vector and lack of required authentication mean attackers can exploit it remotely if untrusted YAML input is accepted, increasing the attack surface. Given the high CVSS score and potential for full system compromise, organizations face risks including data breaches, operational disruption, and reputational damage. The absence of known exploits in the wild suggests a window of opportunity for proactive mitigation before widespread attacks occur.
Mitigation Recommendations
European organizations should immediately assess their use of docling-core and PyYAML in document processing applications. The primary mitigation is to upgrade docling-core to version 2.48.4 or later, which replaces FullLoader with SafeLoader for YAML deserialization. If upgrading docling-core is not immediately feasible, organizations must ensure that PyYAML is upgraded to version 5.4 or higher, which defaults to SafeLoader and mitigates the vulnerability. Additionally, organizations should audit their applications to confirm that untrusted YAML input is not processed or is strictly validated and sanitized before deserialization. Implementing network-level controls to restrict access to services that accept YAML input can reduce exposure. Monitoring and logging deserialization activities may help detect anomalous or malicious payloads. Finally, organizations should maintain an up-to-date inventory of affected software components and apply security patches promptly to reduce the attack surface.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Finland, Belgium, Italy
CVE-2026-24009: CWE-502: Deserialization of Untrusted Data in docling-project docling-core
Description
Docling Core (or docling-core) is a library that defines core data types and transformations in the document processing application Docling. A PyYAML-related Remote Code Execution (RCE) vulnerability, namely CVE-2020-14343, is exposed in docling-core starting in version 2.21.0 and prior to version 2.48.4, specifically only if the application uses pyyaml prior to version 5.4 and invokes `docling_core.types.doc.DoclingDocument.load_from_yaml()` passing it untrusted YAML data. The vulnerability has been patched in docling-core version 2.48.4. The fix mitigates the issue by switching `PyYAML` deserialization from `yaml.FullLoader` to `yaml.SafeLoader`, ensuring that untrusted data cannot trigger code execution. Users who cannot immediately upgrade docling-core can alternatively ensure that the installed version of PyYAML is 5.4 or greater.
AI-Powered Analysis
Technical Analysis
CVE-2026-24009 is a deserialization vulnerability classified under CWE-502 affecting the docling-core library, a component used in the Docling document processing application. The vulnerability stems from the use of PyYAML's FullLoader to deserialize YAML input in the method DoclingDocument.load_from_yaml(), which can lead to remote code execution if untrusted YAML data is processed. This issue is present in docling-core versions starting from 2.21.0 up to 2.48.4, specifically when PyYAML versions prior to 5.4 are used. PyYAML's FullLoader allows execution of arbitrary Python objects during deserialization, which attackers can exploit by crafting malicious YAML payloads. The vulnerability is mitigated in docling-core 2.48.4 by switching to PyYAML's SafeLoader, which restricts deserialization to safe Python objects, preventing code execution. Alternatively, upgrading PyYAML to version 5.4 or later also addresses the issue by defaulting to SafeLoader. The CVSS v3.1 score of 8.1 reflects the high impact and network attack vector, with no privileges or user interaction required, but with high attack complexity due to the need to supply malicious YAML input. No known exploits have been reported in the wild to date. This vulnerability poses a significant risk to applications that process untrusted YAML data using vulnerable docling-core versions, potentially allowing attackers to execute arbitrary code remotely, leading to full system compromise.
Potential Impact
For European organizations, this vulnerability could have severe consequences, especially for those relying on docling-core for document processing workflows. Successful exploitation can lead to remote code execution, allowing attackers to compromise confidentiality by accessing sensitive documents, integrity by altering document data or processing logic, and availability by disrupting services or deploying ransomware. Industries such as finance, legal, healthcare, and government, which often handle sensitive documents and may use automated document processing, are particularly at risk. The vulnerability's network attack vector and lack of required authentication mean attackers can exploit it remotely if untrusted YAML input is accepted, increasing the attack surface. Given the high CVSS score and potential for full system compromise, organizations face risks including data breaches, operational disruption, and reputational damage. The absence of known exploits in the wild suggests a window of opportunity for proactive mitigation before widespread attacks occur.
Mitigation Recommendations
European organizations should immediately assess their use of docling-core and PyYAML in document processing applications. The primary mitigation is to upgrade docling-core to version 2.48.4 or later, which replaces FullLoader with SafeLoader for YAML deserialization. If upgrading docling-core is not immediately feasible, organizations must ensure that PyYAML is upgraded to version 5.4 or higher, which defaults to SafeLoader and mitigates the vulnerability. Additionally, organizations should audit their applications to confirm that untrusted YAML input is not processed or is strictly validated and sanitized before deserialization. Implementing network-level controls to restrict access to services that accept YAML input can reduce exposure. Monitoring and logging deserialization activities may help detect anomalous or malicious payloads. Finally, organizations should maintain an up-to-date inventory of affected software components and apply security patches promptly to reduce the attack surface.
Affected Countries
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-01-19T18:49:20.660Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 6972406b4623b1157c78272c
Added to database: 1/22/2026, 3:21:15 PM
Last enriched: 1/22/2026, 3:35:35 PM
Last updated: 2/6/2026, 8:09:30 AM
Views: 69
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Related Threats
CVE-2025-69619: n/a
UnknownCVE-2025-70073: n/a
HighCVE-2025-15343: Incorrect Default Permissions in Tanium Enforce
MediumCVE-2025-15342: Incorrect Authorization in Tanium Reputation
MediumCVE-2025-15341: Incorrect Default Permissions in Tanium Benchmark
MediumActions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.