Answer in brief
CVE-2023-36464 records a Medium severity (CVSS 6.2) vulnerability in pypdf and PyPDF2 possible Infinite Loop when a comment isn't followed by a character. The current sources do not mark it as known exploited. The current feed maps pypdf (pypi), pypdf2 (pypi). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 6.2. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps pypdf (pypi), pypdf2 (pypi). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| pypdfpypi | >=3.1.0 <3.9.0 | 3.9.0 |
| pypdf2pypi | >=2.2.0 | Not reported |
Published upstream
Jun 30, 2023
Evidence: source:osv:source_dates:source-dates:recordSource modified
Sep 10, 2026
Evidence: source:osv:source_dates:source-dates:recordFirst seen by HOL
Sep 10, 2026
### Impact An attacker who uses this vulnerability can craft a PDF which leads to an infinite loop if `__parse_content_stream` is executed. 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 text from such a PDF. Example Code and a PDF that causes the issue: ```python from pypdf import PdfReader # https://objects.githubusercontent.com/github-production-repository-file-5c1aeb/3119517/11367871?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20230627%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230627T201018Z&X-Amz-Expires=300&X-Amz-Signature=d71c8fd9181c4875f0c04d563b6d32f1d4da6e7b2e6be2f14479ce4ecdc9c8b2&X-Amz-SignedHeaders=host&actor_id=1658117&key_id=0&repo_id=3119517&response-content-disposition=attachment%3Bfilename%3DMiFO_LFO_FEIS_NOA_Published.3.pdf&response-content-type=application%2Fpdf reader = PdfReader("MiFO_LFO_FEIS_NOA_Published.3.pdf") page = reader.pages[0] page.extract_text() ``` The issue was introduced with https://github.com/py-pdf/pypdf/pull/969 ### Patches The issue was fixed with https://github.com/py-pdf/pypdf/pull/1828 ### Workarounds It is recommended to upgrade to `pypdf>=3.9.0`. PyPDF2 users should migrate to pypdf. If you cannot update your version of pypdf, you should modify `pypdf/generic/_data_structures.py`: ``` OLD: while peek not in (b"\r", b"\n"): NEW: while peek not in (b"\r", b"\n", b""): ```
Quoted source text, attributed separately from HOL analysis.