VYPR
High severity8.1NVD Advisory· Published Jan 22, 2026· Updated Apr 9, 2026

CVE-2026-24009

CVE-2026-24009

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.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
docling-corePyPI
>= 2.21.0, < 2.48.42.48.4

Affected products

1

Patches

1
3e8d628eeeae

fix: switch to safe YAML loader (#396)

https://github.com/docling-project/docling-corePanos VagenasOct 1, 2025via ghsa
2 files changed · +2 2
  • docling_core/types/doc/document.py+1 1 modified
    @@ -4354,7 +4354,7 @@ def load_from_yaml(cls, filename: Union[str, Path]) -> "DoclingDocument":
             if isinstance(filename, str):
                 filename = Path(filename)
             with open(filename, encoding="utf-8") as f:
    -            data = yaml.load(f, Loader=yaml.FullLoader)
    +            data = yaml.load(f, Loader=yaml.SafeLoader)
             return DoclingDocument.model_validate(data)
     
         def export_to_dict(
    
  • test/test_docling_doc.py+1 1 modified
    @@ -1973,7 +1973,7 @@ def test_export_with_precision():
                 yaml.dump(act_data, f, default_flow_style=False)
         else:
             with open(exp_file, "r", encoding="utf-8") as f:
    -            exp_data = yaml.load(f, Loader=yaml.FullLoader)
    +            exp_data = yaml.load(f, Loader=yaml.SafeLoader)
             assert act_data == exp_data
     
     
    

Vulnerability mechanics

Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

7

News mentions

0

No linked articles in our index yet.