Vulnerability in pypdf (CVE-2025-55197)
Summary
vulnerability in pypdf (CVE-2025-55197). Risk of unauthorized operations or information disclosure. Exploitable via ``pypdf.filters.decompress``. Mitigation: upgrade to `6.0.0` or later.
AI summary snake-internal / snake-material-v2
Response Actions (7 steps)
Concrete steps and command examples for SOC/SRE teams to execute in order
-
1Identify exposure identify
grep -r 'pypdf' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で `pypdf` を grep し、稼働しているサービス・バージョンを把握する。
-
5Apply temporary workaround mitigate
If you cannot upgrade yet, you might want to implement the workaround for `pypdf.filters.decompress` yourself: https://github.com/py-pdf/pypdf/blob/0dd57738bbdcdb63f0fb43d8a6b3d222b6946595/pypdf/filters.py#L72-L143パッチが適用されるまでの応急処置として、If you cannot upgrade yet, you might want to implement the workaround for `pypdf.filters.decompress` yourself: https://github.com/py-pdf/pypdf/blob/0dd57738bbdcdb63f0fb43d8a6b3d222b6946595/pypdf/filters.py#L72-L143 を実施。回避策の副作用 (機能低下) を確認した上で。
-
6Apply patch patch
Upgrade pypdf to 6.0.0ステージング環境で 6.0.0 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスと、Step 3 で見つけた異常検知の続報チェックを含めること。
-
7Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番では Step 3 と同じログクエリでアラート再発が無いか継続監視。
Affected packages
References
- advisory https://nvd.nist.gov/vuln/detail/CVE-2025-55197
- advisory https://github.com/advisories/GHSA-7hfw-26vp-jp8m
- package https://github.com/py-pdf/pypdf
- package https://pypi.org/project/pypdf
- web https://github.com/py-pdf/pypdf/security/advisories/GHSA-7hfw-26vp-jp8m
- web https://github.com/py-pdf/pypdf/issues/3429
- web https://github.com/py-pdf/pypdf/pull/3430
- web https://github.com/py-pdf/pypdf/blob/0dd57738bbdcdb63f0fb43d8a6b3d222b6946595/pypdf/filters.py#L72-L143
- web https://github.com/py-pdf/pypdf/releases/tag/6.0.0