The SentinelOne Annual Threat Report - A Defenders Guide from the FrontlinesThe SentinelOne Annual Threat ReportGet the Report
Experiencing a Breach?Blog
Get StartedContact Us
SentinelOne
  • Platform
    Platform Overview
    • Singularity Platform
      Welcome to Integrated Enterprise Security
    • AI for Security
      Leading the Way in AI-Powered Security Solutions
    • Securing AI
      Accelerate AI Adoption with Secure AI Tools, Apps, and Agents.
    • How It Works
      The Singularity XDR Difference
    • Singularity Marketplace
      One-Click Integrations to Unlock the Power of XDR
    • Pricing & Packaging
      Comparisons and Guidance at a Glance
    Data & AI
    • Purple AI
      Accelerate SecOps with Generative AI
    • Singularity Hyperautomation
      Easily Automate Security Processes
    • AI-SIEM
      The AI SIEM for the Autonomous SOC
    • AI Data Pipelines
      Security Data Pipeline for AI SIEM and Data Optimization
    • Singularity Data Lake
      AI-Powered, Unified Data Lake
    • Singularity Data Lake for Log Analytics
      Seamlessly Ingest Data from On-Prem, Cloud or Hybrid Environments
    Endpoint Security
    • Singularity Endpoint
      Autonomous Prevention, Detection, and Response
    • Singularity XDR
      Native & Open Protection, Detection, and Response
    • Singularity RemoteOps Forensics
      Orchestrate Forensics at Scale
    • Singularity Threat Intelligence
      Comprehensive Adversary Intelligence
    • Singularity Vulnerability Management
      Application & OS Vulnerability Management
    • Singularity Identity
      Identity Threat Detection and Response
    Cloud Security
    • Singularity Cloud Security
      Block Attacks with an AI-Powered CNAPP
    • Singularity Cloud Native Security
      Secure Cloud and Development Resources
    • Singularity Cloud Workload Security
      Real-Time Cloud Workload Protection Platform
    • Singularity Cloud Data Security
      AI-Powered Threat Detection for Cloud Storage
    • Singularity Cloud Security Posture Management
      Detect and Remediate Cloud Misconfigurations
    Securing AI
    • Prompt Security
      Secure AI Tools Across Your Enterprise
  • Why SentinelOne?
    Why SentinelOne?
    • Why SentinelOne?
      Cybersecurity Built for What’s Next
    • Our Customers
      Trusted by the World’s Leading Enterprises
    • Industry Recognition
      Tested and Proven by the Experts
    • About Us
      The Industry Leader in Autonomous Cybersecurity
    Compare SentinelOne
    • Arctic Wolf
    • Broadcom
    • CrowdStrike
    • Cybereason
    • Microsoft
    • Palo Alto Networks
    • Sophos
    • Splunk
    • Trellix
    • Trend Micro
    • Wiz
    Verticals
    • Energy
    • Federal Government
    • Finance
    • Healthcare
    • Higher Education
    • K-12 Education
    • Manufacturing
    • Retail
    • State and Local Government
  • Services
    Managed Services
    • Managed Services Overview
      Wayfinder Threat Detection & Response
    • Threat Hunting
      World-Class Expertise and Threat Intelligence
    • Managed Detection & Response
      24/7/365 Expert MDR Across Your Entire Environment
    • Incident Readiness & Response
      DFIR, Breach Readiness, & Compromise Assessments
    Support, Deployment, & Health
    • Technical Account Management
      Customer Success with Personalized Service
    • SentinelOne GO
      Guided Onboarding & Deployment Advisory
    • SentinelOne University
      Live and On-Demand Training
    • Services Overview
      Comprehensive Solutions for Seamless Security Operations
    • SentinelOne Community
      Community Login
  • Partners
    Our Network
    • MSSP Partners
      Succeed Faster with SentinelOne
    • Singularity Marketplace
      Extend the Power of S1 Technology
    • Cyber Risk Partners
      Enlist Pro Response and Advisory Teams
    • Technology Alliances
      Integrated, Enterprise-Scale Solutions
    • SentinelOne for AWS
      Hosted in AWS Regions Around the World
    • Channel Partners
      Deliver the Right Solutions, Together
    • SentinelOne for Google Cloud
      Unified, Autonomous Security Giving Defenders the Advantage at Global Scale
    • Partner Locator
      Your Go-to Source for Our Top Partners in Your Region
    Partner Portal→
  • Resources
    Resource Center
    • Case Studies
    • Data Sheets
    • eBooks
    • Reports
    • Videos
    • Webinars
    • Whitepapers
    • Events
    View All Resources→
    Blog
    • Feature Spotlight
    • For CISO/CIO
    • From the Front Lines
    • Identity
    • Cloud
    • macOS
    • SentinelOne Blog
    Blog→
    Tech Resources
    • SentinelLABS
    • Ransomware Anthology
    • Cybersecurity 101
  • About
    About SentinelOne
    • About SentinelOne
      The Industry Leader in Cybersecurity
    • Investor Relations
      Financial Information & Events
    • SentinelLABS
      Threat Research for the Modern Threat Hunter
    • Careers
      The Latest Job Opportunities
    • Press & News
      Company Announcements
    • Cybersecurity Blog
      The Latest Cybersecurity Threats, News, & More
    • FAQ
      Get Answers to Our Most Frequently Asked Questions
    • DataSet
      The Live Data Platform
    • S Foundation
      Securing a Safer Future for All
    • S Ventures
      Investing in the Next Generation of Security, Data and AI
  • Pricing
Get StartedContact Us
CVE Vulnerability Database
Vulnerability Database/CVE-2026-31247

CVE-2026-31247: Docling JATS XML Backend DoS Vulnerability

CVE-2026-31247 is an XML Entity Expansion vulnerability in Docling's JATS XML backend through version 2.61.0 that enables denial of service attacks. This article covers the technical details, affected versions, and mitigation.

Published: May 18, 2026

CVE-2026-31247 Overview

CVE-2026-31247 is a denial-of-service vulnerability in the Docling document parsing library through version 2.61.0. The flaw resides in the JATS (Journal Article Tag Suite) XML backend, which calls etree.parse() without disabling external entity resolution. Attackers can submit a malicious XML document containing nested entity declarations, commonly known as an XML Bomb or Billion Laughs attack. When Docling processes the file, recursive entity expansion consumes excessive memory and CPU, crashing the parser process. The issue is categorized under CWE-400: Uncontrolled Resource Consumption and aligns with the broader class of XML External Entity (XXE) parsing weaknesses.

Critical Impact

A single crafted XML file can exhaust system memory and CPU, taking offline any service that ingests untrusted documents through Docling's JATS backend.

Affected Products

  • Docling document parsing library through version 2.61.0
  • Applications embedding Docling's JATS XML backend for document ingestion
  • Pipelines processing untrusted XML through Docling-based services

Discovery Timeline

  • 2026-05-11 - CVE-2026-31247 published to NVD
  • 2026-05-13 - Last updated in NVD database

Technical Details for CVE-2026-31247

Vulnerability Analysis

Docling is an open-source library for parsing and converting documents across multiple formats, including JATS XML used widely in scientific publishing. The JATS backend relies on the lxml.etree.parse() function to load XML input. By default, lxml resolves internal entity declarations during parsing. Docling does not configure a hardened parser that disables entity expansion, leaving the backend exposed to algorithmic complexity attacks against the XML processor.

The vulnerability does not enable code execution or data disclosure. It targets availability by forcing the parser to allocate exponential memory while resolving nested entities. Any service that accepts XML uploads and feeds them into Docling can be crashed remotely without authentication or user interaction.

Root Cause

The root cause is the absence of secure XML parser configuration in the JATS backend. The call to etree.parse() omits a hardened XMLParser instance with resolve_entities=False, no_network=True, and huge_tree=False options. Without these flags, the parser will dereference internal entity definitions and expand them recursively, which is the mechanism abused by Billion Laughs payloads.

Attack Vector

An attacker delivers a crafted JATS XML file to any endpoint that hands input to the Docling parser. The payload defines a chain of entities where each entity references the previous one multiple times. Resolving the top-level entity produces an exponential blow-up of in-memory strings, exhausting resources before parsing completes. The attack requires only network reachability to a service that calls Docling's JATS loader. For technical details of the vulnerable parsing path, see the Docling project repository.

Detection Methods for CVE-2026-31247

Indicators of Compromise

  • Docling worker processes terminating with out-of-memory (OOM) errors or MemoryError Python tracebacks referencing lxml.etree
  • Sudden spikes in CPU and resident memory on services that ingest XML through Docling
  • Inbound XML payloads containing repeated <!ENTITY> declarations that reference each other recursively
  • Application logs showing failed parses of JATS documents shortly before service restarts

Detection Strategies

  • Inspect XML uploads at the application gateway and flag documents containing nested ENTITY definitions or oversized internal DTDs
  • Monitor process resource ceilings for Docling workers and alert when memory growth exceeds normal parsing baselines
  • Correlate web server access logs of XML uploads with downstream worker crashes or restarts to identify abuse attempts

Monitoring Recommendations

  • Enable structured logging in the Docling pipeline to capture parser exceptions and document hashes for forensic review
  • Track per-tenant XML upload sizes and rejection rates to surface anomalous submitters
  • Forward host-level OOM-killer events from container orchestration logs into centralized monitoring for rapid triage

How to Mitigate CVE-2026-31247

Immediate Actions Required

  • Upgrade Docling to a release later than 2.61.0 that disables entity resolution in the JATS backend once the fix is available
  • Restrict the size of XML files accepted by any service that forwards documents to Docling
  • Run Docling parsing in isolated worker processes with strict memory and CPU limits to contain resource exhaustion
  • Reject XML documents that declare internal DTD subsets when they are not required by your workflow

Patch Information

Monitor the Docling project repository for releases addressing CVE-2026-31247. The expected fix is to construct an lxml.etree.XMLParser with resolve_entities=False, no_network=True, and huge_tree=False, then pass it to etree.parse() in the JATS backend. Additional context is available in the CVE-2026-31247 reference document.

Workarounds

  • Wrap calls to the JATS backend with a pre-parser that strips or rejects XML documents containing ENTITY declarations
  • Deploy a Web Application Firewall (WAF) rule that blocks XML payloads matching Billion Laughs signatures
  • Execute Docling inside a cgroup or container with hard memory caps so a malicious file fails the worker without affecting the host
  • Disable the JATS backend in deployments that do not require JATS XML ingestion
bash
# Example container resource limits to contain XML-bomb DoS
docker run --rm \
  --memory=512m \
  --memory-swap=512m \
  --cpus="1.0" \
  --pids-limit=128 \
  docling-worker:latest

: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

  • Vulnerability Details
  • TypeDOS

  • Vendor/TechDocling

  • SeverityHIGH

  • CVSS Score7.5

  • EPSS Probability0.05%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
  • Impact Assessment
  • ConfidentialityLow
  • IntegrityNone
  • AvailabilityHigh
  • CWE References
  • CWE-400
  • Technical References
  • GitHub Project Repository

  • Notion CVE-2026-31247 Document
  • Related CVEs
  • CVE-2026-31248: Docling METS GBS XML Entity Expansion DoS
Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.

Try SentinelOne
  • Get Started
  • Get a Demo
  • Product Tour
  • Why SentinelOne
  • Pricing & Packaging
  • FAQ
  • Contact
  • Contact Us
  • Customer Support
  • SentinelOne Status
  • Language
  • Platform
  • Singularity Platform
  • Singularity Endpoint
  • Singularity Cloud
  • Singularity AI-SIEM
  • Singularity Identity
  • Singularity Marketplace
  • Purple AI
  • Services
  • Wayfinder TDR
  • SentinelOne GO
  • Technical Account Management
  • Support Services
  • Verticals
  • Energy
  • Federal Government
  • Finance
  • Healthcare
  • Higher Education
  • K-12 Education
  • Manufacturing
  • Retail
  • State and Local Government
  • Cybersecurity for SMB
  • Resources
  • Blog
  • Labs
  • Case Studies
  • Videos
  • Product Tours
  • Events
  • Cybersecurity 101
  • eBooks
  • Webinars
  • Whitepapers
  • Press
  • News
  • Ransomware Anthology
  • Company
  • About Us
  • Our Customers
  • Careers
  • Partners
  • Legal & Compliance
  • Security & Compliance
  • Investor Relations
  • S Foundation
  • S Ventures

©2026 SentinelOne, All Rights Reserved.

Privacy Notice Terms of Use

English