Read the docs

OS command injection in pypdftk lets attackers run commands

Priority HIGH 81CWE-78Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Attack requirements
None
Impact type
Code execution
Confidentiality · integrity · availability
High · High · High
Fix status
No fix listed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-78.

Summary

pypdftk through 0.5 by revolunet contains an OS command injection flaw (CWE-78) in fill_form() that builds shell commands from caller-supplied paths. An attacker who controls pdf_path or out_file can inject shell metacharacters that run OS commands as the Python process. The attack needs no privileges or user interaction over the network. CISA's SSVC assessment lists exploitation as proof of concept.

Written with Claude Haiku 5.5 from the sources below · 2026-10-28

Description from the CNA

pypdftk through 0.5 contains an OS command injection vulnerability in fill_form(), dump_data_fields(), and pdftk_cmd_util() that builds shell commands from caller-supplied paths. Attackers controlling pdf_path or out_file can inject shell metacharacters interpreted by subprocess.Popen with shell=True to execute OS commands as the Python process.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.02691 85th percentileScored 2026-11-07
Fix No fix listed No fixed version in the sources yet

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
Yes
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
revolunetpypdftkup to 0.5—No fix listedCNA
  • pypdftk Vendorrevolunet Affected up to 0.5 Fixed in — No fix listed CNA

Remediation

No fixed version is listed for pypdftk, so all versions through 0.5 are affected.

Written with Claude Haiku 5.5 from the sources below · 2026-10-28

Timeline

  1. 2026-10-14 Threatist record created from CVE-2026-110636
  2. 2026-10-14 Alias added: GHSA-hx4x-jq2f-pwr6
  3. 2026-10-20 CISA SSVC decision points changed
  4. 2026-10-20 Priority changed: MEDIUM → HIGH

References

Sources