CVE-2026-71428: unstructured: Server-Side Request Forgery in the URL-based partitioning
The unstructured library provides open-source components for ingesting and pre-processing images and text documents, such as PDFs, HTML, Word docs, and many more. From 0.4.7 until 0.24.0, the url argument of partition, partition_html, and partition_md is fetched without host validation in unstructured/partition/auto.py, unstructured/partition/html/partition.py, and unstructured/partition/md.py. An attacker who controls that URL can make a server-side ingestion service request loopback addresses, internal HTTP services, or cloud metadata endpoints through direct targets, redirects, or DNS rebinding. The response body is returned as Element text, allowing internal response disclosure, and side-effecting GET endpoints may also be triggered. This issue is fixed in version 0.24.0.
Security readout for executives and security teams
Plain-English summary
A vulnerable document-ingestion service can be tricked into requesting addresses that outsiders normally cannot reach. This could expose internal service responses or cloud metadata and may trigger actions on internal GET endpoints. Risk exists when attackers can control a URL passed to affected Unstructured functions.
Executive priority
Treat as an immediate remediation priority for internet-facing or multi-tenant ingestion systems. The vulnerability can cross network trust boundaries and disclose sensitive internal responses without authentication. First identify affected deployments and attacker-controlled URL paths, then upgrade and verify network safeguards.
Technical view
Unstructured versions 0.4.7 through versions below 0.24.0 fetch URL arguments without validating destinations. The affected partition, partition_html, and partition_md paths permit SSRF through direct targets, redirects, or DNS rebinding. Retrieved content is returned as Element text, creating disclosure risk. Version 0.24.0 fixes the issue.
Likely exposure
Exposure is highest for server-side ingestion services using affected Unstructured versions and accepting URLs from unauthenticated or otherwise untrusted users. Deployments using only trusted local inputs, or not invoking the affected URL-based functions, are less likely to be reachable, but still require verification.
Exploitation context
The supplied record assigns CVSS 9.3 because exploitation can be remote, unauthenticated, low-complexity, and require no user interaction. The bundle reports KEV false and provides no evidence of active exploitation. Real-world exploit prevalence is therefore unknown.
Researcher notes
The affected code paths are unstructured/partition/auto.py, html/partition.py, and md.py. The record maps the issue to CWE-918 and CWE-601. Impact includes internal response disclosure and possible side effects from GET requests; availability impact is not claimed. Public evidence establishes the vulnerable range and fix, but not exploitation in the wild.
Mitigation direction
Upgrade Unstructured to version 0.24.0 or later.
Temporarily disable URL-based ingestion from untrusted users if upgrading cannot occur immediately.
Restrict service egress to loopback, internal services, and cloud metadata endpoints as defense in depth.
Review vendor advisory and release guidance before restoring untrusted URL ingestion.
Validation and detection
Inventory deployed Unstructured versions and flag versions from 0.4.7 to below 0.24.0.
Identify services calling partition, partition_html, or partition_md with URL arguments.
Determine whether external or untrusted users can influence submitted URLs.
Verify destination validation also covers redirects and DNS resolution changes.
Review outbound-request logs for unexpected access to internal, loopback, or metadata destinations.
Confirm production deployments run version 0.24.0 or later after remediation.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-601: User-session and phishing behavior lookup
Client-side and session-facing weaknesses should be reviewed alongside initial-access and user-execution behaviors. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
CWE-918: Information exposure and cloud metadata lookup
Information exposure and SSRF weaknesses can make discovery, cloud metadata, and credential material review relevant. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references SSRF or metadata access, so cloud discovery and credential material review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-601 · source CWE mapping
URL Redirection to Untrusted Site
URL Redirection to Untrusted Site represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.
Server-Side Request Forgery represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.