An attacker who uses this vulnerability can craft a PDF which leads to an infinite loop if the PyPDF2 user wrote the following code:
from PyPDF2 import PdfFileReader, PdfFileWriter
from PyPDF2.pdf import ContentStream
reader = PdfFileReader("malicious.pdf", strict=False)
for page in reader.pages:
ContentStream(page.getContents(), reader)
PyPDF2==1.27.5
and later are patched.
Credits to Sebastian Krause for finding (issue) and fixing (PR) it.
{ "nvd_published_at": "2022-04-18T19:15:00Z", "cwe_ids": [ "CWE-835" ], "severity": "MODERATE", "github_reviewed": true, "github_reviewed_at": "2022-04-22T20:54:41Z" }