docling-slim
Get your documents ready for gen AI
Activity
- Latest release
- 18h ago
- Total releases
- 63
- Cadence
- ~2 days
- Last 12 months
- 63
Reach
- Stars
- 69.8k
Details
- License
- MIT
- First release
- Apr 29, 2026
| Version | Released | |
|---|---|---|
2.145.0
minor
|
2.145.0
minor
Dependencies (65)
+ 57 more
Changelog
Compare changes
|
|
2.144.0
minor
|
2.144.0
minor
Dependencies (65)
+ 57 more
Changelog
Compare changes
|
|
2.143.1
patch
|
2.143.1
patch
Dependencies (65)
+ 57 more
Changelog
Compare changes
|
|
2.143.0
minor
|
2.143.0
minor
Dependencies (65)
+ 57 more
Changelog
Compare changes
|
|
2.142.1
patch
|
2.142.1
patch
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.142.0
minor
|
2.142.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.141.0
minor
|
2.141.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.140.0
minor
|
2.140.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.139.0
minor
|
2.139.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.138.0
minor
|
2.138.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.137.0
minor
|
2.137.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.136.0
minor
|
2.136.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.135.0
minor
|
2.135.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.134.0
minor
|
2.134.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.133.0
minor
|
2.133.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.132.0
minor
|
2.132.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.131.0
minor
3 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.131.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.130.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.130.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.129.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.129.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.128.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.128.0
minor
Dependencies (64)
+ 56 more
Changelog
Compare changes
|
|
2.127.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.127.0
minor
Dependencies (61)
+ 53 more
Changelog
Compare changes
|
|
2.126.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.126.0
minor
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.125.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.125.0
minor
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.124.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.124.0
minor
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.123.1
patch
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.123.1
patch
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.123.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.123.0
minor
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.122.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.122.0
minor
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.121.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.121.0
minor
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.120.3
patch
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.120.3
patch
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.120.2
patch
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.120.2
patch
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.120.1
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.120.1
minor
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.119.0
minor
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.119.0
minor
Dependencies (60)
+ 52 more
Changelog
Compare changes
|
|
2.118.1
patch
7 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.118.1
patch
Dependencies (59)
+ 51 more
Changelog
Compare changes
|
|
2.118.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.118.0
minor
Dependencies (59)
+ 51 more
Changelog
Compare changes
|
|
2.117.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.117.0
minor
Dependencies (59)
+ 51 more
Changelog
Compare changes
|
|
2.116.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.116.0
minor
Dependencies (59)
+ 51 more
Changelog
Compare changes
|
|
2.115.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.115.0
minor
Dependencies (59)
+ 51 more
Changelog
Compare changes
|
|
2.114.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.114.0
minor
Dependencies (59)
+ 51 more
Changelog
Compare changes
|
|
2.113.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.113.0
minor
Dependencies (55)
+ 47 more
Changelog
Compare changes
|
|
2.112.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.112.0
minor
Dependencies (55)
+ 47 more
Changelog
Compare changes
|
|
2.111.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.111.0
minor
Dependencies (55)
+ 47 more
Changelog
Compare changes
|
|
2.110.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.110.0
minor
Dependencies (55)
+ 47 more
Changelog
Compare changes
|
|
2.109.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.109.0
minor
Dependencies (55)
+ 47 more
Changelog
Compare changes
|
|
2.108.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.108.0
minor
Dependencies (55)
+ 47 more
Changelog
Compare changes
|
|
2.107.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.107.0
minor
Dependencies (54)
+ 46 more
Changelog
Compare changes
|
|
2.106.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.106.0
minor
Dependencies (53)
+ 45 more
Changelog
Compare changes
|
|
2.105.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.105.0
minor
Dependencies (53)
+ 45 more
Changelog
Compare changes
|
|
2.104.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.104.0
minor
Dependencies (52)
+ 44 more
Changelog
Compare changes
|
|
2.103.0
minor
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.103.0
minor
Dependencies (52)
+ 44 more
Changelog
Compare changes
|
|
2.102.2
patch
8 CVEs
CVE-2026-105742
PYSEC-2026-4212
GHSA-p3fw-7699-7926
PYSEC-2026-4189
Oct 15, 2026
Docling: Configured HTTP headers sent to every remote image host named by a document
3.7
/ 10
Low
Network
High
None
None
Unchanged
Low
None
None
Summary
Details
Affected configurations
ImpactDisclosure of the configured request headers, typically credentials, to a host chosen by the document author. Proof of concept
Converting this file with Other items from the original report (DNS validation and unvalidated browser requests) are tracked in GHSA-pc36-qwjq-x68c. PatchesFixed in docling 2.132.0 by #4420. Configured headers are now sent only to the origin of the source document, checked on every redirect hop, and no longer to other hosts named by the document. WorkaroundsUpgrade to 2.132.0. For older versions: Do not set Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 32 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105743
PYSEC-2026-4214
GHSA-pc36-qwjq-x68c
PYSEC-2026-4190
Oct 15, 2026
Docling has SSRF guard bypass in remote resource fetching (DNS rebinding / multi-record resolution; no IP validation in HTML render mode)
4.0
/ 10
Medium
Network
High
None
None
Changed
Low
None
None
SummaryWhen remote fetching is enabled (
Details
JavaScript is disabled during rendering, so the browser path can only show internal responses passively in the page screenshot. It cannot read them and send them elsewhere. Affected configurations
The main-URL fetch for ImpactRequests from the converting host to internal services such as cloud metadata endpoints and loopback services. Response content is exposed only when it decodes as an image or is rendered into the page screenshot. PatchesFixed in docling 2.132.0 by #4420. The image loader now resolves the host once, requires every resolved address (IPv4 and IPv6, including IPv4-mapped, 6to4 and NAT64 forms) to be globally routable, and connects to one of the validated addresses, using the same parsed host for the check and the connection. Remote requests made during HTML browser rendering are downloaded by the same loader, and the browser itself stays offline. When a proxy is configured through environment variables, requests go through the proxy, which is then responsible for filtering destinations. WorkaroundsUpgrade to 2.132.0. For older versions: Keep Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 35 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105744
PYSEC-2026-4216
GHSA-x3q2-h9hx-4r4j
PYSEC-2026-4191
Oct 15, 2026
Docling has arbitrary file read/write (and command execution when shell-escape is enabled) when rendering untrusted TikZ with the opt-in Tectonic engine
7.5
/ 10
High
Network
High
None
Required
Unchanged
High
High
High
SummaryWhen the LaTeX backend is configured to render TikZ pictures with the Tectonic engine ( Details
Separately, the Affected configurations
ImpactDisclosure of local files readable by the process, and creation or overwrite of files writable by the process. Writing to startup or configuration files can lead to code execution. With shell escape enabled, commands run directly. Proof of concept
Converting this file with PatchesMitigated in docling 2.132.0 by #4419:
This check is best-effort. It reads the source text, and TeX can open files in ways a text check cannot see, for example through package commands or names built by macros. As documented in the pipeline options reference, untrusted LaTeX rendered with WorkaroundsUpgrade to 2.132.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 33 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.131.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.132.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105748
PYSEC-2026-4213
GHSA-p944-4xh2-x776
PYSEC-2026-4208
Oct 15, 2026
Docling: Crafted DoclingDocument JSON embeds local image files into converted output
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
Low
None
None
Summarydocling accepts serialized Details
Only files that PIL can decode as an image are disclosed. Other files, such as text files or keys, fail to decode and are not embedded. The different error behaviour does reveal whether a path exists. ImpactDisclosure of image files readable by the converting process (for example other users' uploads or page images in a shared service), and disclosure of whether a local path exists. Proof of concept
PatchesFixed in docling 2.131.0 by #4417. The Docling JSON backend now drops image references that point at local files (paths, Code that loads untrusted JSON directly with docling-core ( WorkaroundsUpgrade to 2.131.0. For older versions:
Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105749
PYSEC-2026-4211
GHSA-cgc7-9qp3-86m3
PYSEC-2026-4195
Oct 15, 2026
Docling: Unbounded table rowspan/colspan in HTML, JATS, ODS and BoxNote backends causes CPU/memory exhaustion
6.5
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
High
SummaryThe HTML, JATS, ODS (OpenDocument spreadsheet) and BoxNote backends accept table Details
Measured on 2.130.0: a 54-byte HTML file with ImpactDenial of service of the converting process from a very small input document. Confidentiality and integrity are not affected. Proof of concept
PatchesFixed in docling 2.131.0 by #4414. Table spans are clamped to the HTML limits (colspan 1000, rowspan 65534) and to the actual size of the table in the HTML, JATS, BoxNote and OpenDocument spreadsheet backends, so conversion time and memory grow with the real table only. WorkaroundsUpgrade to 2.131.0. For older versions: Run conversions of untrusted documents in a separate process with memory and CPU-time limits, or restrict Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105745
PYSEC-2026-4210
GHSA-9jxx-vjrv-h2rq
PYSEC-2026-4192
Oct 15, 2026
Docling imports plugin entry points before the allow_external_plugins check
6.7
/ 10
Medium
Local
High
Low
Required
Unchanged
High
High
High
Summary
DetailsIn Affected configurationsEnvironments in which a package registering a docling plugin entry point is installed, for example an unvetted or compromised dependency, and which rely on ImpactExecution of a third-party plugin module's import-time code in the docling process, contrary to the documented behaviour of PatchesFixed in docling 2.131.0 by #4413. Plugin entry points are now filtered by module name before they are loaded, so with WorkaroundsUpgrade to 2.131.0. For older versions: Only install trusted packages in environments that run docling. Check which packages register docling plugin entry points with Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105747
PYSEC-2026-4209
GHSA-3cr3-8m4c-fpxw
PYSEC-2026-4194
Oct 15, 2026
Docling: METS-GBS archive member limit enforced after full member enumeration (memory exhaustion during format detection)
4.3
/ 10
Medium
Network
Low
None
Required
Unchanged
None
None
Low
SummaryWhen docling detects the input format of a gzip-compressed tar archive (METS-GBS), and later when the METS-GBS backend opens it, it calls Details
Measured on Python 3.12: an archive of 1,000,000 empty members compresses to about 6.2 MB and makes This check was introduced by the fix for CVE-2026-44018 (GHSA-r3xg-rg9j-67fv) in 2.91.0. The eager enumeration it relies on has been there since METS-GBS detection was added in 2.45.0. ImpactMemory exhaustion of the converting process, proportional to the size of the input archive. Confidentiality and integrity are not affected. PatchesFixed in docling 2.131.0 by #4412. Format detection and the METS-GBS backend now read archive members one at a time and stop as soon as WorkaroundsUpgrade to 2.131.0. For older versions: Reject gzip or tar inputs before they reach docling when METS-GBS support is not needed, and run conversions of untrusted input with memory limits. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 34 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.118.1
2.119.0
2.120.1
2.120.2
2.120.3
2.121.0
2.122.0
2.123.0
2.123.1
2.124.0
2.125.0
2.126.0
2.127.0
2.128.0
2.129.0
2.130.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.131.0
References
Updated Oct 15, 2026 · Source: OSV.dev
CVE-2026-105750
PYSEC-2026-4215
GHSA-q43m-vhcp-mhvm
PYSEC-2026-4196
Oct 15, 2026
Docling: `enable_local_fetch` is not enforced in HTML browser-rendering mode
5.9
/ 10
Medium
Network
High
None
None
Unchanged
High
None
None
SummaryWhen the HTML backend renders pages in a headless browser ( DetailsIn render mode, Playwright requests are filtered by
Versions 2.82.0–2.90.x did no request filtering in render mode at all. The browser runs with JavaScript disabled (from 2.91.0), so disclosure is passive: only what Chromium renders visibly inside the page viewport ends up in the page image. Only ImpactAn attacker who can submit HTML for conversion can read any text file the conversion process can read (for example Only applications that meet all of these conditions are affected:
The following are not affected: the default configuration ( PatchesFixed in 2.118.1 (#3948). In render mode, WorkaroundsIf you can't upgrade, don't use CreditsReported by @priyankn. Affected versions
2.100.0
2.101.0
2.102.0
2.102.1
2.102.2
2.103.0
2.104.0
2.105.0
2.106.0
2.107.0
2.108.0
2.109.0
+ 18 more Show less
2.110.0
2.111.0
2.112.0
2.113.0
2.114.0
2.115.0
2.116.0
2.117.0
2.118.0
2.92.0
2.93.0
2.94.0
2.95.0
2.96.0
2.96.1
2.97.0
2.98.0
2.99.0
Fixed in
2.118.1
References
Updated Oct 15, 2026 · Source: OSV.dev |
2.102.2
patch
Dependencies (51)
+ 43 more
Changelog
Compare changes
|