CVE-2026-110636: pypdftk through 0.5 OS Command Injection via PDF and Output Paths
pypdftk through 0.5 contains an OS command injection vulnerability in fillform(), dumpdatafields(), and pdftkcmdutil() that builds shell commands from caller-supplied paths. Attackers controlling pdfpath or outfile can inject shell metacharacters interpreted by subprocess.Popen with shell=True to execute OS commands as the Python process.
Affected Software
Event History
Frequently Asked Questions
Who is exposed to exploitation?
Applications using pypdftk through 0.5 are exposed if an attacker can control the pdf_path or out_file values passed to fill_form(), dump_data_fields(), or pdftk_cmd_util(). The injected command runs with the operating-system privileges of the Python process.
What does an attacker need to exploit this issue?
The attacker needs control over a PDF input path or output-file path used by one of the affected functions. Shell metacharacters in those values are interpreted because the library invokes subprocess.Popen with shell=True.
Are applications affected by default?
The vulnerability is present in pypdftk through version 0.5, but exploitation depends on whether untrusted parties can influence the relevant path arguments. The provided information does not identify a safe default configuration or any built-in mitigation.
What can be done if patching is not immediately possible?
Do not pass attacker-controlled values into pdf_path or out_file for the affected functions. Restrict those paths to trusted, validated values and avoid allowing shell metacharacters to reach the vulnerable command construction.