{"metadata": {"vulnerability": "CVE-2026-119206", "count": 33, "kinds": {"milestone": 11, "sighting": 2, "kev": 0, "other": 20}, "linked_omitted": 0}, "data": [{"timestamp": "2026-10-29T16:04:48.729Z", "date_only": false, "value": "2026-10-29T16:04:48.729Z", "kind": "milestone", "label": "Reserved", "source": "cvelistv5", "record": "CVE-2026-119206", "field": "cveMetadata.dateReserved"}, {"timestamp": "2026-10-29T20:37:15.057Z", "date_only": false, "value": "2026-10-29T20:37:15.057Z", "kind": "milestone", "label": "Published", "source": "cvelistv5", "record": "CVE-2026-119206", "field": "cveMetadata.datePublished", "metric_role": "disclosure", "metric_basis": "recorded_event"}, {"timestamp": "2026-10-29T20:37:15.057Z", "date_only": false, "value": "2026-10-29T20:37:15.057Z", "kind": "other", "label": "Updated", "source": "cvelistv5 / GitHub_M", "record": "CVE-2026-119206", "field": "containers.cna.providerMetadata.dateUpdated"}, {"timestamp": "2026-10-29T20:41:50.994Z", "date_only": false, "value": "2026-10-29T20:41:50.994153Z", "kind": "sighting", "label": "Seen", "source": "https://infosec.exchange/users/cve/statuses/117526135473037713", "record": "CVE-2026-119206", "field": "creation_timestamp", "uuid": "d7ea0a16-76a8-4234-b1c0-d810455c5bd3", "content": "CVE-2026-119206 pypdf: Possible long runtimes when retrieving page labels pypdf is a free and open-source pure-python PDF library. Prior to 6.21.3, pypdf can take excessive time to retrieve page labels from a crafted PDF containing a flat page-label number tree with many ranges. The page_labels property resolves each page independently and repeatedly scans the same /Nums array from the beginning, causing work to grow with both the page count and the number of label ranges. This issue is fixed in version 6.21.3.\nhttps://www.cve.org/CVERecord?id=CVE-2026-119206https://github.com/py-pdf/pypdf/security/advisories/GHSA-42gh-23hr-vphwhttps://github.com/py-pdf/pypdf/pull/4251https://github.com/py-pdf/pypdf/commit/b891fef37000cd86baa6e9848a3387d080b3b03ehttps://github.com/py-pdf/pypdf/releases/tag/6.21.3#py-pdf #pypdf#CVE_2026_119206#bot", "url": "https://infosec.exchange/users/cve/statuses/117526135473037713"}, {"timestamp": "2026-10-29T21:17:00Z", "date_only": false, "value": "2026-10-29T21:17:00Z", "kind": "milestone", "label": "Published", "source": "osv_ubuntu \u00b7 UBUNTU-CVE-2026-119206", "record": "UBUNTU-CVE-2026-119206", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-10-29T21:17:19Z", "date_only": false, "value": "2026-10-29T21:17:19Z", "kind": "other", "label": "Nvd published at", "source": "github \u00b7 GHSA-42GH-23HR-VPHW", "record": "GHSA-42GH-23HR-VPHW", "field": "database_specific.nvd_published_at", "linked_record": true}, {"timestamp": "2026-10-29T21:17:19.817Z", "date_only": false, "value": "2026-10-29T21:17:19.817", "kind": "milestone", "label": "Published", "source": "fkie_nvd \u00b7 FKIE_CVE-2026-119206", "record": "FKIE_CVE-2026-119206", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-10-30T23:08:55Z", "date_only": false, "value": "2026-10-30T23:08:55Z", "kind": "milestone", "label": "Published", "source": "github \u00b7 GHSA-42GH-23HR-VPHW", "record": "GHSA-42GH-23HR-VPHW", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-10-30T23:08:56Z", "date_only": false, "value": "2026-10-30T23:08:56Z", "kind": "other", "label": "Updated", "source": "github \u00b7 GHSA-42GH-23HR-VPHW", "record": "GHSA-42GH-23HR-VPHW", "field": "modified", "linked_record": true}, {"timestamp": "2026-10-31T09:44:22Z", "date_only": false, "value": "2026-10-31T09:44:22Z", "kind": "milestone", "label": "Published", "source": "osv_homebrew \u00b7 BREW-RAPID-MLX-CVE-2026-119206", "record": "BREW-RAPID-MLX-CVE-2026-119206", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-10-31T10:30:52Z", "date_only": false, "value": "2026-10-31T10:30:52.000000Z", "kind": "sighting", "label": "Seen", "source": "https://gist.github.com/alon710/dd3548879a53928a053a95ee9ab5ff26", "record": "cve-2026-119206", "field": "creation_timestamp", "uuid": "92ca9a57-f6b0-4b42-96df-e60cacd9f18e", "content": "# CVE-2026-119206: CVE-2026-119206: Algorithmic Complexity Denial of Service in pypdf Page Label Resolution\n\n&gt; **CVSS Score:** 7.1\n&gt; **Published:** 2026-10-30\n&gt; **Full Report:** https://cvereports.com/reports/CVE-2026-119206\n\n## Summary\nCVE-2026-119206 is an algorithmic complexity vulnerability in pypdf prior to version 6.21.3 that causes uncontrolled CPU resource consumption when evaluating the page_labels property. Due to repeated linear scans of the PDF catalog's /PageLabels number tree from index zero for each individual page, processing a document with a large number of pages and label ranges scales quadratically. An unauthenticated attacker can supply a crafted PDF document to an application that reads page labels, resulting in prolonged execution times and denial of service.\n\n## TL;DR\npypdf versions prior to 6.21.3 resolve PDF page labels in quadratic O(pages * ranges) time by restarting the /Nums array scan from index 0 for every page. Supplying a crafted PDF with thousands of pages and page label ranges triggers excessive CPU consumption and application hangs when the .page_labels property is accessed.\n\n## Exploit Status: POC\n\n## Technical Details\n\n- **Vulnerability Type**: Algorithmic Complexity Denial of Service (CWE-400)\n- **Affected Component**: pypdf (pypdf._doc_common.page_labels / pypdf._page_labels)\n- **Attack Vector**: Network (Crafted PDF document)\n- **CVSS v4.0 Score**: 7.1 High (CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N)\n- **EPSS Score**: 0.30% (23.18th Percentile)\n- **Impact**: High Availability Loss (Quadratic O(P * M) CPU Exhaustion)\n- **Patched Version**: pypdf 6.21.3\n- **CISA KEV Status**: Not Listed\n\n## Affected Systems\n\n- pypdf\n- **pypdf**: &lt; 6.21.3 (Fixed in: `6.21.3`)\n\n## Mitigation\n\n- Upgrade pypdf to version 6.21.3 or higher to enable single-pass O(P + M) traversal for flat /Nums arrays.\n- Enforce execution timeouts and process isolation when parsing metadata from untrusted PDF documents.\n- Validate and bound the number of pages and /PageLabels /Nums entries before accessing the reader.page_labels property.\n- Avoid materializing the full reader.page_labels list if only a subset of page labels is needed by the application.\n\n**Remediation Steps:**\n1. Audit project dependencies (requirements.txt, pyproject.toml, Pipfile.lock, or poetry.lock) to identify pypdf versions below 6.21.3.\n2. Run `pip install --upgrade \"pypdf&gt;=6.21.3\"` across affected environments and rebuild deployment artifacts.\n3. If using untrusted PDF inputs in web workers, implement a pre-check on `reader.root_object.get('/PageLabels')` to reject documents with excessive `/Nums` lengths or indirect value references.\n4. Configure WSGI/ASGI worker timeouts (e.g., Gunicorn `--timeout`) to terminate hung worker processes if anomalous CPU consumption occurs.\n\n## References\n\n- [GitHub Security Advisory GHSA-42gh-23hr-vphw](https://github.com/py-pdf/pypdf/security/advisories/GHSA-42gh-23hr-vphw)\n- [GitHub Pull Request #4251](https://github.com/py-pdf/pypdf/pull/4251)\n- [Official Fix Commit (b891fef37000cd86baa6e9848a3387d080b3b03e)](https://github.com/py-pdf/pypdf/commit/b891fef37000cd86baa6e9848a3387d080b3b03e)\n- [Official Release Note (pypdf 6.21.3)](https://github.com/py-pdf/pypdf/releases/tag/6.21.3)\n- [CVE Record (CVE.org): CVE-2026-119206](https://www.cve.org/CVERecord?id=CVE-2026-119206)\n- [NVD Vulnerability Detail: CVE-2026-119206](https://nvd.nist.gov/vuln/detail/CVE-2026-119206)\n- [CVE Project cvelistV5 JSON: CVE-2026-119206](https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/119xxx/CVE-2026-119206.json)\n- [Wiz Vulnerability Database: CVE-2026-119206](https://www.wiz.io/vulnerability-database/cve/cve-2026-119206)\n\n\n---\n*Generated by [CVEReports](https://cvereports.com/reports/CVE-2026-119206) - Automated Vulnerability Intelligence*", "url": "https://gist.github.com/alon710/dd3548879a53928a053a95ee9ab5ff26"}, {"timestamp": "2026-10-31T10:44:05Z", "date_only": false, "value": "2026-10-31T10:44:05Z", "kind": "milestone", "label": "Published", "source": "osv_homebrew \u00b7 BREW-PSUTILS-CVE-2026-119206", "record": "BREW-PSUTILS-CVE-2026-119206", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-10-31T10:53:10Z", "date_only": false, "value": "2026-10-31T10:53:10Z", "kind": "milestone", "label": "Published", "source": "osv_homebrew \u00b7 BREW-PDFLY-CVE-2026-119206", "record": "BREW-PDFLY-CVE-2026-119206", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-10-31T11:07:52Z", "date_only": false, "value": "2026-10-31T11:07:52Z", "kind": "milestone", "label": "Published", "source": "osv_homebrew \u00b7 BREW-PDFALYZER-CVE-2026-119206", "record": "BREW-PDFALYZER-CVE-2026-119206", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-10-31T11:07:52Z", "date_only": false, "value": "2026-10-31T11:07:52Z", "kind": "other", "label": "Updated", "source": "osv_homebrew \u00b7 BREW-PDFALYZER-CVE-2026-119206", "record": "BREW-PDFALYZER-CVE-2026-119206", "field": "modified", "linked_record": true}, {"timestamp": "2026-10-31T20:06:07Z", "date_only": false, "value": "2026-10-31T20:06:07Z", "kind": "other", "label": "Updated", "source": "osv_homebrew \u00b7 BREW-RAPID-MLX-CVE-2026-119206", "record": "BREW-RAPID-MLX-CVE-2026-119206", "field": "modified", "linked_record": true}, {"timestamp": "2026-10-31T20:07:35Z", "date_only": false, "value": "2026-10-31T20:07:35Z", "kind": "other", "label": "Updated", "source": "osv_homebrew \u00b7 BREW-PDFLY-CVE-2026-119206", "record": "BREW-PDFLY-CVE-2026-119206", "field": "modified", "linked_record": true}, {"timestamp": "2026-10-31T20:43:39Z", "date_only": false, "value": "2026-10-31T20:43:39Z", "kind": "other", "label": "Updated", "source": "osv_homebrew \u00b7 BREW-PSUTILS-CVE-2026-119206", "record": "BREW-PSUTILS-CVE-2026-119206", "field": "modified", "linked_record": true}, {"timestamp": "2026-11-02T16:47:23Z", "date_only": false, "value": "2026-11-02T16:47:23Z", "kind": "other", "label": "Advisory revision", "source": "csaf_opensuse \u00b7 OPENSUSE-SU-2026:22219-1", "record": "OPENSUSE-SU-2026:22219-1", "field": "document.tracking.revision_history.0.date", "linked_record": true}, {"timestamp": "2026-11-02T16:47:23Z", "date_only": false, "value": "2026-11-02T16:47:23Z", "kind": "other", "label": "Document generated", "source": "csaf_opensuse \u00b7 OPENSUSE-SU-2026:22219-1", "record": "OPENSUSE-SU-2026:22219-1", "field": "document.tracking.generator.date", "linked_record": true}, {"timestamp": "2026-11-02T16:47:23Z", "date_only": false, "value": "2026-11-02T16:47:23Z", "kind": "other", "label": "Impact", "source": "csaf_opensuse \u00b7 OPENSUSE-SU-2026:22219-1", "record": "OPENSUSE-SU-2026:22219-1", "field": "vulnerabilities.0.threats.0.date", "linked_record": true}, {"timestamp": "2026-11-02T16:47:23Z", "date_only": false, "value": "2026-11-02T16:47:23Z", "kind": "milestone", "label": "Published", "source": "csaf_opensuse \u00b7 OPENSUSE-SU-2026:22219-1", "record": "OPENSUSE-SU-2026:22219-1", "field": "document.tracking.initial_release_date", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}, {"timestamp": "2026-11-03T16:41:04.264Z", "date_only": false, "value": "2026-11-03T16:41:04.264522Z", "kind": "other", "label": "Recorded", "source": "cvelistv5 / CISA-ADP", "record": "CVE-2026-119206", "field": "containers.adp.0.metrics.0.other.content.timestamp"}, {"timestamp": "2026-11-03T16:41:04.264Z", "date_only": false, "value": "2026-11-03T16:41:04.264522Z", "kind": "other", "label": "Recorded", "source": "fkie_nvd \u00b7 FKIE_CVE-2026-119206", "record": "FKIE_CVE-2026-119206", "field": "metrics.ssvcV203.0.ssvcData.timestamp", "linked_record": true}, {"timestamp": "2026-11-03T16:41:47.790Z", "date_only": false, "value": "2026-11-03T16:41:47.790Z", "kind": "other", "label": "Updated", "source": "cvelistv5", "record": "CVE-2026-119206", "field": "cveMetadata.dateUpdated"}, {"timestamp": "2026-11-03T16:41:47.790Z", "date_only": false, "value": "2026-11-03T16:41:47.790Z", "kind": "other", "label": "Updated", "source": "cvelistv5 / CISA-ADP", "record": "CVE-2026-119206", "field": "containers.adp.0.providerMetadata.dateUpdated"}, {"timestamp": "2026-11-03T17:18:05.060Z", "date_only": false, "value": "2026-11-03T17:18:05.060", "kind": "other", "label": "Updated", "source": "fkie_nvd \u00b7 FKIE_CVE-2026-119206", "record": "FKIE_CVE-2026-119206", "field": "lastModified", "linked_record": true}, {"timestamp": "2026-11-04T21:58:37Z", "date_only": false, "value": "2026-11-04T21:58:37Z", "kind": "other", "label": "Advisory revision", "source": "csaf_opensuse \u00b7 OPENSUSE-SU-2026:22219-1", "record": "OPENSUSE-SU-2026:22219-1", "field": "document.tracking.revision_history.1.date", "linked_record": true}, {"timestamp": "2026-11-05T04:42:51Z", "date_only": false, "value": "2026-11-05T04:42:51Z", "kind": "other", "label": "Updated", "source": "osv_ubuntu \u00b7 UBUNTU-CVE-2026-119206", "record": "UBUNTU-CVE-2026-119206", "field": "modified", "linked_record": true}, {"timestamp": "2026-11-10T16:05:27Z", "date_only": false, "value": "2026-11-10T16:05:27Z", "kind": "other", "label": "Advisory revision", "source": "csaf_opensuse \u00b7 OPENSUSE-SU-2026:22219-1", "record": "OPENSUSE-SU-2026:22219-1", "field": "document.tracking.revision_history.2.date", "linked_record": true}, {"timestamp": "2026-11-10T16:05:27Z", "date_only": false, "value": "2026-11-10T16:05:27Z", "kind": "other", "label": "Updated", "source": "csaf_opensuse \u00b7 OPENSUSE-SU-2026:22219-1", "record": "OPENSUSE-SU-2026:22219-1", "field": "document.tracking.current_release_date", "linked_record": true}, {"timestamp": "2026-11-11T11:56:32Z", "date_only": false, "value": "2026-11-11T11:56:32Z", "kind": "other", "label": "Updated", "source": "cleanstart \u00b7 CLEANSTART-2026-VO46960", "record": "CLEANSTART-2026-VO46960", "field": "modified", "linked_record": true}, {"timestamp": "2026-11-12T00:40:00.307Z", "date_only": false, "value": "2026-11-12T00:40:00.307787Z", "kind": "milestone", "label": "Published", "source": "cleanstart \u00b7 CLEANSTART-2026-VO46960", "record": "CLEANSTART-2026-VO46960", "field": "published", "metric_role": "disclosure", "metric_basis": "recorded_event", "linked_record": true}], "metrics": {"as_of": "2026-11-14T21:32:41.640Z", "anchors": {"origin": {"timestamp": "2026-10-29T20:37:15.057Z", "date_only": false, "value": "2026-10-29T20:37:15.057Z", "kind": "milestone", "label": "Published", "source": "cvelistv5", "record": "CVE-2026-119206", "field": "cveMetadata.datePublished", "metric_role": "disclosure", "metric_basis": "recorded_event"}, "discovery": null, "report": null, "acknowledgement": null, "disclosure": {"timestamp": "2026-10-29T20:37:15.057Z", "date_only": false, "value": "2026-10-29T20:37:15.057Z", "kind": "milestone", "label": "Published", "source": "cvelistv5", "record": "CVE-2026-119206", "field": "cveMetadata.datePublished", "metric_role": "disclosure", "metric_basis": "recorded_event"}, "exploit_publication": null, "exploitation": null, "patch": null}, "vendor_response_time": {"available": false, "missing": ["start", "end"]}, "time_to_exploit": {"available": false, "missing": ["end"]}, "disclosure_to_exploit": {"available": false, "missing": ["end"]}, "disclosure_to_exploit_publication": {"available": false, "missing": ["end"]}, "time_to_patch": {"available": false, "missing": ["start", "end"]}, "total_time_to_patch": {"available": false, "missing": ["start", "end"]}, "disclosure_to_patch": {"available": false, "missing": ["end"]}, "time_unpatched": {"available": true, "seconds": 1385726.583935, "hours": 384.92405109305554, "days": 16.038502128877315, "min_seconds": 1385726.583935, "max_seconds": 1385726.583935, "approximate": false, "ongoing": true, "order_known": true, "batch_listing": false, "end_before_start": false, "start": {"timestamp": "2026-10-29T20:37:15.057Z", "date_only": false, "value": "2026-10-29T20:37:15.057Z", "kind": "milestone", "label": "Published", "source": "cvelistv5", "record": "CVE-2026-119206", "field": "cveMetadata.datePublished", "metric_role": "disclosure", "metric_basis": "recorded_event"}, "end": {"timestamp": "2026-11-14T21:32:41.640Z", "date_only": false, "label": "As of", "source": "Calculation clock"}}, "exploitation_to_patch": {"available": false, "missing": ["start"]}, "exploit_publication_to_patch": {"available": false, "missing": ["start"]}}}
