CVE-2023-36807
published 2023-06-30CVE-2023-36807: pypdf is a pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files. In version 2.10.5 an attacker who uses…
PriorityP430medium6.5CVSS 3.1
AVNACLPRNUIRSUCNINAH
EPSS
0.52%
40.2th percentile
pypdf is a pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files. In version 2.10.5 an attacker who uses this vulnerability can craft a PDF which leads to an infinite loop. This infinite loop blocks the current process and can utilize a single core of the CPU by 100%. It does not affect memory usage. That is, for example, the case if the user extracted metadata from such a malformed PDF. Versions prior to 2.10.5 throw an error, but do not hang forever. This issue was fixed with https://github.com/py-pdf/pypdf/pull/1331 which has been included in release 2.10.6. Users are advised to upgrade. Users unable to upgrade should modify `PyPDF2/generic/_data_structures.py::read_object` to an an error throwing case. See GHSA-hm9v-vj3r-r55m for details.
Affected
5 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| debian | pypdf2 | < pypdf2 2.10.7-1 (bookworm) | pypdf2 2.10.7-1 (bookworm) |
| py-pdf | pypdf | — | — |
| pypdf2_project | pypdf2 | >= 0 < 2.10.7-1 | 2.10.7-1 |
| pypdf2_project | pypdf2 | >= 2.10.5 < 2.10.6 | 2.10.6 |
| pypdf_project | pypdf | — | — |
CVSS provenance
nvdv3.16.5MEDIUMCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
osv6.5MEDIUM
vendor_debian6.2MEDIUM
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
Debian
CVE-2023-36807: pypdf2 - pypdf is a pure-python PDF library capable of splitting, merging, cropping, and ...
vendor_debian·2023·CVSS 6.2
CVE-2023-36807 [MEDIUM] CVE-2023-36807: pypdf2 - pypdf is a pure-python PDF library capable of splitting, merging, cropping, and ...
pypdf is a pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files. In version 2.10.5 an attacker who uses this vulnerability can craft a PDF which leads to an infinite loop. This infinite loop blocks the current process and can utilize a single core of the CPU by 100%. It does not affect memory usage. That is, for example, the case if the user extracted metadata from such a malformed PDF. Versions prior to 2.10.5 throw an error, but do not hang forever. This issue was fixed with https://github.com/py-pdf/pypdf/pull/1331 which has been included in release 2.10.6. Users are advised to upgrade. Users unable to upgrade should modify `PyPDF2/generic/_data_structures.py::read_object` to an an error throwing case. See GHSA-hm9v-vj3r-r55m for detai
GHSA
PyPDF2 vulnerable to possible Infinite Loop when reading malformed objects
ghsa·2023-06-30
CVE-2023-36807 [MEDIUM] CWE-835 PyPDF2 vulnerable to possible Infinite Loop when reading malformed objects
PyPDF2 vulnerable to possible Infinite Loop when reading malformed objects
### Impact
An attacker who uses this vulnerability can craft a PDF which leads to an infinite loop.
This infinite loop blocks the current process and can utilize a single core of the CPU by 100%. It does not affect memory usage. That is, for example, the case if the user extracted metadata from such a malformed PDF.
### Patches
The issue was fixed with https://github.com/py-pdf/pypdf/pull/1331
### Workarounds
If you cannot update your version of `PyPDF2` (preferably to `pypdf>3.1.0` as PyPDF2 is deprecated), you should modify `PyPDF2/generic/_data_structures.py::read_object`.
Replace:
```python
else:
# number object OR indirect reference
peek = stream.read(20)
stream.seek(-len(peek), 1) # reset to start
if Indi
OSV
CVE-2023-36807: pypdf is a pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files
osv·2023-06-30·CVSS 6.5
CVE-2023-36807 [MEDIUM] CVE-2023-36807: pypdf is a pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files
pypdf is a pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files. In version 2.10.5 an attacker who uses this vulnerability can craft a PDF which leads to an infinite loop. This infinite loop blocks the current process and can utilize a single core of the CPU by 100%. It does not affect memory usage. That is, for example, the case if the user extracted metadata from such a malformed PDF. Versions prior to 2.10.5 throw an error, but do not hang forever. This issue was fixed with https://github.com/py-pdf/pypdf/pull/1331 which has been included in release 2.10.6. Users are advised to upgrade. Users unable to upgrade should modify `PyPDF2/generic/_data_structures.py::read_object` to an an error throwing case. See GHSA-hm9v-vj3r-r55m for detai
OSV
PyPDF2 vulnerable to possible Infinite Loop when reading malformed objects
osv·2023-06-30
CVE-2023-36807 [MEDIUM] PyPDF2 vulnerable to possible Infinite Loop when reading malformed objects
PyPDF2 vulnerable to possible Infinite Loop when reading malformed objects
### Impact
An attacker who uses this vulnerability can craft a PDF which leads to an infinite loop.
This infinite loop blocks the current process and can utilize a single core of the CPU by 100%. It does not affect memory usage. That is, for example, the case if the user extracted metadata from such a malformed PDF.
### Patches
The issue was fixed with https://github.com/py-pdf/pypdf/pull/1331
### Workarounds
If you cannot update your version of `PyPDF2` (preferably to `pypdf>3.1.0` as PyPDF2 is deprecated), you should modify `PyPDF2/generic/_data_structures.py::read_object`.
Replace:
```python
else:
# number object OR indirect reference
peek = stream.read(20)
stream.seek(-len(peek), 1) # reset to start
if Indi
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
https://github.com/py-pdf/pypdf/issues/1329https://github.com/py-pdf/pypdf/pull/1331https://github.com/py-pdf/pypdf/security/advisories/GHSA-hm9v-vj3r-r55mhttps://github.com/py-pdf/pypdf/issues/1329https://github.com/py-pdf/pypdf/pull/1331https://github.com/py-pdf/pypdf/security/advisories/GHSA-hm9v-vj3r-r55m
2023-06-30
Published