CVE-2026-44017: Docling Zip Slip Vulnerability Enables Remote Code Execution
Docling, a document processing library, contains a vulnerability in how it downloads and extracts AI model files. Before version 2.91.0, the software did not properly validate file paths when extracting ZIP archives, allowing an attacker who intercepts or compromises the model download source to write files anywhere on the system where the application has write access. This could lead to remote code execution, persistent backdoors, or data destruction. The vulnerability requires attackers to first compromise the download source—either through supply chain attacks, DNS spoofing, or man-in-the-middle interception—making it a moderately difficult but high-impact attack.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 7.5 HIGH · CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
- Weaknesses (CWE)
- CWE-22
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-06-24 / 2026-07-15
NVD description (verbatim)
Docling simplifies document processing by parsing diverse formats and providing integrations with the generative AI ecosystem. Prior to 2.91.0, the EasyOCR model download functionality extracted ZIP archives without validating member paths, enabling Zip Slip attacks. If an attacker could compromise the model download source (via supply chain attack, DNS spoofing, or MITM), they could write arbitrary files to any location writable by the process, potentially achieving remote code execution by overwriting Python files or system binaries, persistent backdoors by modifying startup scripts or SSH keys, and data corruption or system compromise. This vulnerability is fixed in 2.91.0.
5 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-44017 is a Zip Slip vulnerability (CWE-22) in Docling's EasyOCR model download handler. The library extracts ZIP archives without canonicalizing or validating member paths, allowing path traversal sequences (e.g., '../../../') to write files outside the intended extraction directory. An attacker controlling the source of the downloaded model file can craft a malicious ZIP that, when extracted, overwrites Python bytecode files, system binaries, SSH keys, or shell initialization scripts. The attack surface is conditional on network-level compromise (MITM, DNS hijacking) or supply chain poisoning of the model repository, but once achieved, the consequences include arbitrary code execution in the application's process context. Fixed in version 2.91.0 through proper path validation during archive extraction.
Business impact
Organizations relying on Docling for document processing workflows face supply chain risk. If model downloads are compromised, attackers gain code execution within the host or container running the application, potentially enabling lateral movement, data exfiltration, or persistent backdoors. The impact is elevated for enterprises processing sensitive documents (financial records, legal documents, medical data) or running Docling in CI/CD pipelines or automated batch processing systems. Persistent backdoors could survive patching if attacker-modified startup scripts are not detected and cleaned.
Affected systems
Docling versions prior to 2.91.0 are affected. All deployments using the EasyOCR model download feature are at risk if their network path to the model source is not properly secured. This includes on-premises installations, cloud deployments, and containerized environments (Docker, Kubernetes) where Docling initializes model downloads at startup or on first use.
Exploitability
Exploitation requires network-level control or compromise of the model repository source. While not trivially exploitable off-the-shelf, the barrier is moderate: successful exploitation of any MITM vector (unencrypted or poorly validated HTTPS, DNS spoofing on internal networks) or compromise of the upstream model repository immediately enables arbitrary file writes and code execution. The CVSS score of 7.5 reflects HIGH severity with high impact but conditional attack complexity (AC:H), appropriately accounting for the prerequisite network compromise.
Remediation
Upgrade Docling to version 2.91.0 or later immediately. The patch validates archive member paths before extraction, preventing traversal sequences from writing outside the intended directory. Organizations should verify that model downloads occur over secured, validated HTTPS connections and consider pinning model hashes or using a trusted local model cache to reduce exposure to remote source compromise.
Patch guidance
Update Docling to 2.91.0 or any subsequent version. Verify the patch by checking release notes or code diffs confirming ZIP extraction path validation. If running Docling in a CI/CD pipeline or container, ensure the base image or dependency lock includes the patched version. After patching, consider a one-time manual validation of any previously downloaded models, especially if your environment was potentially exposed to untrusted network paths during the vulnerable window.
Detection guidance
Monitor for ZIP extraction operations in Docling process activity; unusual file writes outside expected model directories may indicate exploitation. Check logs for failed or suspicious model downloads. Audit network traffic to confirm model downloads use validated HTTPS with certificate pinning where feasible. Review file system integrity of Python site-packages directories and startup scripts for signs of unauthorized modification. Organizations using software composition analysis (SCA) tools should flag Docling <2.91.0 in dependency inventories.
Why prioritize this
Although KEV inclusion is not applicable and real-world exploitation requires prior network compromise, the consequence severity (arbitrary code execution and persistence) combined with the prevalence of Docling in AI/ML and document processing pipelines justifies HIGH priority patching. Supply chain attacks and MITM vectors are increasingly common; organizations cannot assume their download paths are always secure.
Risk score, explained
The CVSS 3.1 score of 7.5 (HIGH) appropriately balances impact and exploitability. Attack Vector (Network) and User Interaction (Required) reflect that attackers must compromise the remote source or network path. The high Impact scores (Confidentiality, Integrity, Availability all H) reflect the full scope of post-exploitation damage (code execution, file overwrite, persistence). Attack Complexity (High) accounts for the prerequisite compromise step. The overall rating correctly positions this as a serious but non-trivial vulnerability.
Frequently asked questions
Do I need network compromise to be exploited by CVE-2026-44017?
Yes. The attacker must control or intercept the connection to the model download source. This could occur via man-in-the-middle attacks, DNS spoofing, or compromise of the upstream repository. If your network is properly segmented and HTTPS is enforced with certificate validation, risk is reduced—but not eliminated if the model repository itself is compromised.
Does upgrading to 2.91.0 automatically remove malicious files written by prior exploitation?
No. The patch prevents future exploitation by validating paths during extraction. However, if your system was compromised while running a vulnerable version, you should audit your file system and startup scripts for unauthorized modifications and clean them manually. A forensic review is recommended for systems exposed to untrusted networks during the vulnerable window.
What organizations are most at risk?
Those deploying Docling in automated document processing pipelines, especially in cloud or CI/CD environments where model downloads happen frequently or in less-controlled network conditions. Organizations processing sensitive documents and those whose Docling instances run with elevated privileges (e.g., root, or with access to shared system resources) face elevated consequence severity.
Can I mitigate this without patching immediately?
Partial mitigation: restrict outbound access for model downloads to trusted, rate-limited sources; use a local model cache to avoid repeated downloads; run Docling in a sandboxed environment or container with minimal privileges; validate downloaded model files against checksums if available. These measures reduce risk but do not eliminate the vulnerability—patching is necessary.
This analysis is based on the vulnerability description and CVSS scoring provided. Actual risk and exploitability may vary based on your deployment architecture, network controls, and usage patterns. Always verify vendor advisories and patch notes directly before applying updates. No exploit code or proof-of-concept details are provided herein. For incident response or forensics related to potential exploitation, engage qualified security professionals. Source: NVD (public-domain), retrieved 2026-08-02. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2026-44022MEDIUMDocling LaTeX Path Traversal Arbitrary File Read Vulnerability
- CVE-2016-20076HIGHWordPress Simple-Backup 2.7.11 Unauthenticated File Access & Deletion Vulnerability
- CVE-2016-20081HIGHHB Audio Gallery Lite Path Traversal Vulnerability – Unauthenticated File Download
- CVE-2017-20248HIGHApptha Slider Gallery Path Traversal Vulnerability
- CVE-2017-20250HIGHMac Photo Gallery 3.0 Path Traversal File Download Vulnerability
- CVE-2018-25408HIGHOpen ISES Project Path Traversal Vulnerability (High Severity)
- CVE-2024-32729HIGHPath Traversal in QuantumCloud Conversational Forms for ChatBot (CVSS 7.5)
- CVE-2024-40646HIGHVertex Path Traversal Vulnerability – Remote File Access Risk