{"id":"CVE-2026-102999","title":"pypdf is a free and open-source pure-python PDF library","summary":"pypdf is a free and open-source pure-python PDF library. Prior to 6.19.0, a crafted PDF containing many embedded files can cause the dictionary-based attachments API in pypdf/_doc_common.py to reparse the full attachment list for each co…","severity":"high","cvss":7.5,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","cwe":["CWE-400","CWE-407","CWE-606"],"vendor":"pypdf_project","product":"pypdf","affected":["pypdf < 6.19.0"],"patched":["pypdf 6.19.0"],"published":"2026-09-30","updated":"2026-10-05","sourceUpdated":"2026-10-05T15:04:55.217","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-102999","references":[{"url":"https://github.com/py-pdf/pypdf/commit/6b10556d13609a68f9ed18bb29fdd8bba88eb2c3","label":"security-advisories@github.com"},{"url":"https://github.com/py-pdf/pypdf/pull/4081","label":"security-advisories@github.com"},{"url":"https://github.com/py-pdf/pypdf/releases/tag/6.19.0","label":"security-advisories@github.com"},{"url":"https://github.com/py-pdf/pypdf/security/advisories/GHSA-v247-6f48-mgcj","label":"security-advisories@github.com"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-102999.json"},{"url":"https://access.redhat.com/security/cve/CVE-2026-102999"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2544307"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-102999"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-102999"},{"url":"https://github.com/advisories/GHSA-v247-6f48-mgcj"},{"url":"https://github.com/py-pdf/pypdf"},{"url":"https://pypi.org/project/pypdf"}],"tags":["nvd","cve.org","csaf","vex","red-hat","ghsa","pip","osv"],"epss":0.00348,"epssPercentile":0.2818,"aliases":["GHSA-v247-6f48-mgcj","PYSEC-2026-4159"],"ecosystem":"pip","ssvc":{"exploitation":"none","automatable":"yes","technicalImpact":"partial","timestamp":"2026-10-01T18:51:12.395176Z"},"scores":{"nvd":7.5,"cna":8.7,"vendor":7.5},"ingestedAt":"2026-09-30T21:25:07.840Z","slug":"CVE-2026-102999","body":"## Overview\n\npypdf is a free and open-source pure-python PDF library. Prior to 6.19.0, a crafted PDF containing many embedded files can cause the dictionary-based attachments API in pypdf/_doc_common.py to reparse the full attachment list for each content lookup, producing repeated work and long runtimes when an application accesses the embedded-file mapping. This issue is fixed in version 6.19.0.\n\n## Affected\n\n- `pypdf < 6.19.0`\n\n## Remediation\n\nUpgrade past the affected range:\n\n- `pypdf 6.19.0`\n\n## Package advisory (CVE-2026-102999)\n\nAffected packages:\n\n- `pypdf < 6.19.0`\n\nPatched in:\n\n- `pypdf 6.19.0`\n\nSource: https://github.com/advisories/GHSA-v247-6f48-mgcj\n\n## Vendor advisories\n\n- **Red Hat VEX** · Important · affected: Lightspeed Core, Red Hat Ansible Automation Platform 2, Red Hat Enterprise Linux AI (RHEL AI) 3, Red Hat OpenShift AI (RHOAI), Red Hat Quay 3 · no fix planned: Red Hat Ansible Automation Platform 2, Red Hat Enterprise Linux AI (RHEL AI) 3, Lightspeed Core, Red Hat OpenShift AI (RHOAI), … · updated 2026-10-15 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-102999.json)","depth":"twilight","depthScore":41,"depthScoreParts":{"impact":41.3,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[{"seq":215855,"id":"CVE-2026-102999","ts":1791213924611,"field":"cvss","old":"8.7","new":"7.5"}]}