{"id":"UBUNTU-CVE-2026-102999","details":"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 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.","modified":"2026-10-02T22:30:14.377925968Z","published":"2026-10-02T00:00:00Z","upstream":["CVE-2026-102999"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2026-102999"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2026-102999"},{"type":"REPORT","url":"https://github.com/py-pdf/pypdf/security/advisories/GHSA-v247-6f48-mgcj"},{"type":"REPORT","url":"https://github.com/py-pdf/pypdf/pull/4081"},{"type":"REPORT","url":"https://github.com/py-pdf/pypdf/commit/6b10556d13609a68f9ed18bb29fdd8bba88eb2c3"},{"type":"REPORT","url":"https://github.com/py-pdf/pypdf/releases/tag/6.19.0"}],"affected":[{"package":{"name":"pypdf2","ecosystem":"Ubuntu:Pro:16.04:LTS","purl":"pkg:deb/ubuntu/pypdf2?arch=source&distro=esm-apps%2Fxenial"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.23+git20141008-1","1.25.1-1","1.25.1-1ubuntu0.1~esm1","1.25.1-1ubuntu0.1~esm2"],"ecosystem_specific":{"binaries":[{"binary_name":"python-pypdf2","binary_version":"1.25.1-1ubuntu0.1~esm2"},{"binary_name":"python3-pypdf2","binary_version":"1.25.1-1ubuntu0.1~esm2"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-102999.json"}},{"package":{"name":"pypdf2","ecosystem":"Ubuntu:Pro:18.04:LTS","purl":"pkg:deb/ubuntu/pypdf2?arch=source&distro=esm-apps%2Fbionic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.26.0-2","1.26.0-2ubuntu0.1~esm1","1.26.0-2ubuntu0.1~esm2"],"ecosystem_specific":{"binaries":[{"binary_version":"1.26.0-2ubuntu0.1~esm2","binary_name":"python-pypdf2"},{"binary_name":"python3-pypdf2","binary_version":"1.26.0-2ubuntu0.1~esm2"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-102999.json"}},{"package":{"name":"pypdf2","ecosystem":"Ubuntu:20.04:LTS","purl":"pkg:deb/ubuntu/pypdf2?arch=source&distro=focal"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.26.0-2","1.26.0-3ubuntu1","1.26.0-3ubuntu1.20.04.1","1.26.0-3ubuntu1.20.04.2"],"ecosystem_specific":{"binaries":[{"binary_name":"python-pypdf2","binary_version":"1.26.0-3ubuntu1.20.04.2"},{"binary_name":"python3-pypdf2","binary_version":"1.26.0-3ubuntu1.20.04.2"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-102999.json"}},{"package":{"name":"pypdf2","ecosystem":"Ubuntu:22.04:LTS","purl":"pkg:deb/ubuntu/pypdf2?arch=source&distro=jammy"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.26.0-4","1.26.0-4ubuntu0.22.04.1","1.26.0-4ubuntu0.22.04.2"],"ecosystem_specific":{"binaries":[{"binary_name":"python3-pypdf2","binary_version":"1.26.0-4ubuntu0.22.04.2"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-102999.json"}},{"package":{"name":"pypdf","ecosystem":"Ubuntu:24.04:LTS","purl":"pkg:deb/ubuntu/pypdf?arch=source&distro=noble"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.4.1-1","3.17.4-1","4.0.0-1","4.0.1-1","4.0.2-1"],"ecosystem_specific":{"binaries":[{"binary_name":"python3-pypdf","binary_version":"4.0.2-1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-102999.json"}},{"package":{"name":"pypdf2","ecosystem":"Ubuntu:24.04:LTS","purl":"pkg:deb/ubuntu/pypdf2?arch=source&distro=noble"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.12.1-3","2.12.1-4"],"ecosystem_specific":{"binaries":[{"binary_name":"python3-pypdf2","binary_version":"2.12.1-4"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-102999.json"}},{"package":{"name":"pypdf","ecosystem":"Ubuntu:26.04:LTS","purl":"pkg:deb/ubuntu/pypdf?arch=source&distro=resolute"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["5.4.0-1","6.9.2-1"],"ecosystem_specific":{"binaries":[{"binary_version":"6.9.2-1","binary_name":"python3-pypdf"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-102999.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"},{"type":"Ubuntu","score":"medium"}]}