Description
Prefect version 3.6.23 is vulnerable to remote code execution due to improper handling of user-controlled input in the `GitRepository` storage class. The `commit_sha` parameter, which is passed to git commands, lacks validation and does not include a `--` separator to distinguish user input from git flags. This allows attackers to inject arbitrary git flags, such as `--upload-pack`, enabling execution of external programs. Additionally, the `directories` parameter can be exploited to inject git flags during sparse-checkout operations. These vulnerabilities allow any user with deployment creation permissions to execute arbitrary commands on worker machines, compromising shared work pools in multi-tenant environments.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| prefecthq | prefecthq/prefect | unspecified – ≤ latest | — |
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
GitHub 1 repository
-
renat0z3r0/prefect-cve-2026-5366 ★ 0 · Jun 27, 2026
PoC for CVE-2026-5366: git argument injection in Prefect's GitRepository leading to RCE on the worker.
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | prefect | >= 3.1.11, < 3.6.25 | 3.6.25 | GHSA-7pm4-56h2-5rxr |