Human
Machine
REPRO-2026-00080 HIGH RCE
Verified
Docling-core YAML Deserialization RCE via FullLoader
docling-core (pip) Feb 13, 2026
What's the vulnerability?
A PyYAML-related Remote Code Execution (RCE) vulnerability is exposed in docling-core >=2.21.0, <2.48.4 when the application uses pyyaml < 5.4 and invokes DoclingDocument.load_from_yaml() with untrusted YAML data. The unsafe yaml.FullLoader allows attacker-controlled Python object construction, leading to arbitrary command execution during deserialization before any validation occurs.
Root Cause Analysis
Variant Analysis
Bypass and alternate trigger exploration (if present).
One Command
Verify with pruva-verify
Run the Pruva CLI to automatically fetch and execute the reproduction script.
pruva-verify REPRO-2026-00080 or
pruva-verify GHSA-VQXF-V2GG-X3HC or
pruva-verify CVE-2026-24009 Install:
curl -fsSL https://pruva.dev/install.sh | sh Or Run Manually
1
Download the script
curl -O https://pruva.dev/api/v1/reproductions/REPRO-2026-00080/artifacts/repro/reproduction_steps.sh 2
Make executable
chmod +x reproduction_steps.sh 3
Run the script
./reproduction_steps.sh Run in a VM, container, or disposable environment. This exploits a real vulnerability.
How Pruva Reproduced This
Watch the AI agent's step-by-step process.
Loading session...
Artifacts
repro/rca_report.md2.6 KBrepro/reproduction_steps.sh1.0 KBvuln_variant/rca_report.md3.4 KBvuln_variant/reproduction_steps.sh2.8 KBbundle/ticket.md2.6 KBlogs/pwned.txt0.1 KBlogs/payload.yaml0.2 KBvuln_variant/patch_analysis.md1.1 KBlogs/vulnerable_attempt_1.log0.2 KBlogs/vulnerable_attempt_2.yaml0.2 KBlogs/vulnerable_attempt_3.yaml0.2 KBlogs/vulnerable_summary.log0.4 KBlogs/vulnerable_attempt_1.yaml0.1 KBlogs/fixed_attempt_3.log0.2 KBlogs/vulnerable_attempt_3.log0.2 KBlogs/fixed_attempt_1.log0.2 KBlogs/fixed_summary.log0.2 KBlogs/fixed_attempt_1.yaml0.1 KBlogs/bypass_result.log0.1 KBlogs/vulnerable_attempt_2.log0.3 KBlogs/fixed_attempt_2.yaml0.2 KBlogs/fixed_attempt_2.log0.2 KBlogs/fixed_attempt_3.yaml0.2 KBlogs/vulnerable_attempt_2_pwned.txt0.1 KB