
CVE catalog
CVE-2023-46250
pypdf affected and fixed versions
pypdf is a free and open-source pure-python PDF library. An attacker who uses a vulnerability present in versions 3.7.0 through 3.16.4 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 when the pypdf-user manipulates an incoming malicious PDF e.g. by merging it with another PDF or by adding annotations. The issue was fixed in version 3.17.0. As a workaround, apply the patch manually by modifying `pypdf/generic/_data_structures.py`.
- Severity
- Medium · CVSS 5.1
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H - Published
- Source
- [NVD] · [CVE record]
- EPSS
- 0.24% · Oct 27, 2026
Projects and upstream resources
Reported versions and fixes
Each observation applies to its named package, distribution, and release. Distribution backports can fix a vulnerability while retaining an older upstream version number.
| Distribution / release | Package | Version | Status | Source |
|---|---|---|---|---|
| Debiantrixie | pypdf | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debiantrixie | pypdf | 5.4.0-1 | Not affected | [CVE-2023-46250] |
| Debiansid | pypdf | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debiansid | pypdf | 6.21.1-1 | Not affected | [CVE-2023-46250] |
| Debianforky | pypdf | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debianforky | pypdf | 6.21.1-1 | Not affected | [CVE-2023-46250] |
| Debianbookworm | pypdf | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debianbookworm | pypdf | 3.4.1-1+deb12u1 | Not affected | [CVE-2023-46250] |
| Debianbookworm | pypdf2 | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debianbookworm | pypdf2 | 2.12.1-3+deb12u1 | Not affected | [CVE-2023-46250] |
Provider details and historical evidence
| Distribution / release | Package | Version | Status | Source |
|---|---|---|---|---|
| Debianbookworm | pypdf | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debianbookworm | pypdf | 3.4.1-1+deb12u1 | Not affected | [CVE-2023-46250] |
| Debianbookworm | pypdf2 | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debianbookworm | pypdf2 | 2.12.1-3+deb12u1 | Not affected | [CVE-2023-46250] |
| Debianforky | pypdf | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debianforky | pypdf | 6.21.1-1 | Not affected | [CVE-2023-46250] |
| Debiansid | pypdf | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debiansid | pypdf | 6.21.1-1 | Not affected | [CVE-2023-46250] |
| Debiantrixie | pypdf | Not reported | Not affectedDistribution reports not affected | [CVE-2023-46250] |
| Debiantrixie | pypdf | 5.4.0-1 | Not affected | [CVE-2023-46250] |
Original provider fields
{
"package_releases": [
{
"name": "pypdf",
"status": "not affected",
"release": "sid",
"version": "6.21.1-1"
},
{
"name": "pypdf",
"status": "not affected",
"release": "forky",
"version": "6.21.1-1"
},
{
"name": "pypdf",
"status": "not affected",
"release": "trixie",
"version": "5.4.0-1"
},
{
"name": "pypdf",
"status": "not affected",
"release": "bookworm",
"version": "3.4.1-1+deb12u1"
},
{
"name": "pypdf2",
"status": "not affected",
"release": "bookworm",
"version": "2.12.1-3+deb12u1"
}
],
"fixed_versions": [
{
"bug": null,
"name": "pypdf",
"type": "source",
"origin": null,
"release": "sid",
"urgency": "unimportant",
"fixed_version": "0"
},
{
"bug": null,
"name": "pypdf",
"type": "source",
"origin": null,
"release": "forky",
"urgency": "unimportant",
"fixed_version": "0"
},
{
"bug": null,
"name": "pypdf",
"type": "source",
"origin": null,
"release": "trixie",
"urgency": "unimportant",
"fixed_version": "0"
},
{
"bug": null,
"name": "pypdf",
"type": "source",
"origin": null,
"release": "bookworm",
"urgency": "unimportant",
"fixed_version": "0"
},
{
"bug": null,
"name": "pypdf2",
"type": "source",
"origin": null,
"release": "bookworm",
"urgency": "unimportant",
"fixed_version": "0"
}
],
"distribution_packages": []
}OpenFactory catalog packages
Matching against OpenFactory catalog package versions is in progress.
[Debian 12 (Bookworm)]
- [python3-pypdf]Unknown
Source package: [pypdf]
Details (2)
3.4.1-1+deb12u1· all · bookwormNot affected
dsa · pypdf · debian · bookworm
3.4.1-1+deb12u1· all · bookwormNot affected
dsa · pypdf · debian · bookworm
- [python3-pypdf2]Unknown
Source package: [pypdf2]
Details (2)
2.12.1-3+deb12u1· all · bookwormNot affected
dsa · pypdf2 · debian · bookworm
2.12.1-3+deb12u1· all · bookwormNot affected
dsa · pypdf2 · debian · bookworm
Observed: