{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "prefect",
"purl": "pkg:pypi/prefect"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "3.6.18"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"0.10.0",
"0.10.1",
"0.10.2",
"0.10.3",
"0.10.4",
"0.10.5",
"0.10.6",
"0.10.7",
"0.11.0",
"0.11.1",
"0.11.2",
"0.11.3",
"0.11.4",
"0.11.5",
"0.12.0",
"0.12.1",
"0.12.2",
"0.12.3",
"0.12.4",
"0.12.5",
"0.12.6",
"0.13.0",
"0.13.1",
"0.13.10",
"0.13.11",
"0.13.12",
"0.13.13",
"0.13.14",
"0.13.15",
"0.13.16",
"0.13.17",
"0.13.18",
"0.13.19",
"0.13.2",
"0.13.3",
"0.13.4",
"0.13.5",
"0.13.6",
"0.13.7",
"0.13.8",
"0.13.9",
"0.14.0",
"0.14.1",
"0.14.10",
"0.14.11",
"0.14.12",
"0.14.13",
"0.14.14",
"0.14.15",
"0.14.16",
"0.14.17",
"0.14.18",
"0.14.19",
"0.14.2",
"0.14.20",
"0.14.21",
"0.14.22",
"0.14.3",
"0.14.4",
"0.14.5",
"0.14.6",
"0.14.7",
"0.14.8",
"0.14.9",
"0.15.0",
"0.15.1",
"0.15.10",
"0.15.11",
"0.15.12",
"0.15.13",
"0.15.2",
"0.15.3",
"0.15.4",
"0.15.5",
"0.15.6",
"0.15.7",
"0.15.8",
"0.15.9",
"0.5.0",
"0.5.1",
"0.5.2",
"0.5.3",
"0.5.4",
"0.5.5",
"0.6.0",
"0.6.1",
"0.6.2",
"0.6.3",
"0.6.4",
"0.6.5",
"0.6.6",
"0.6.7",
"0.7.0",
"0.7.1",
"0.7.2",
"0.7.3",
"0.8.0",
"0.8.1",
"0.9.0",
"0.9.1",
"0.9.2",
"0.9.3",
"0.9.4",
"0.9.5",
"0.9.6",
"0.9.7",
"0.9.8",
"1.0.0",
"1.0rc1",
"1.1.0",
"1.2.0",
"1.2.1",
"1.2.2",
"1.2.3",
"1.2.4",
"1.3.0",
"1.3.1",
"1.4.0",
"1.4.1",
"2.0.0",
"2.0.1",
"2.0.2",
"2.0.3",
"2.0.4",
"2.0a1",
"2.0a10",
"2.0a11",
"2.0a12",
"2.0a13",
"2.0a2",
"2.0a3",
"2.0a4",
"2.0a5",
"2.0a6",
"2.0a7",
"2.0a8",
"2.0a9",
"2.0b1",
"2.0b10",
"2.0b11",
"2.0b12",
"2.0b13",
"2.0b14",
"2.0b15",
"2.0b16",
"2.0b2",
"2.0b3",
"2.0b4",
"2.0b5",
"2.0b6",
"2.0b7",
"2.0b8",
"2.0b9",
"2.1.0",
"2.1.1",
"2.10.0",
"2.10.1",
"2.10.10",
"2.10.11",
"2.10.12",
"2.10.13",
"2.10.14",
"2.10.15",
"2.10.16",
"2.10.17",
"2.10.18",
"2.10.19",
"2.10.2",
"2.10.20",
"2.10.21",
"2.10.3",
"2.10.4",
"2.10.5",
"2.10.6",
"2.10.7",
"2.10.8",
"2.10.9",
"2.11.0",
"2.11.1",
"2.11.2",
"2.11.3",
"2.11.4",
"2.11.5",
"2.12.0",
"2.12.1",
"2.13.0",
"2.13.1",
"2.13.2",
"2.13.3",
"2.13.4",
"2.13.5",
"2.13.6",
"2.13.7",
"2.13.8",
"2.14.0",
"2.14.1",
"2.14.10",
"2.14.11",
"2.14.12",
"2.14.13",
"2.14.14",
"2.14.15",
"2.14.16",
"2.14.17",
"2.14.18",
"2.14.19",
"2.14.2",
"2.14.20",
"2.14.21",
"2.14.3",
"2.14.4",
"2.14.5",
"2.14.6",
"2.14.8",
"2.14.9",
"2.15.0",
"2.16.0",
"2.16.1",
"2.16.2",
"2.16.3",
"2.16.4",
"2.16.5",
"2.16.6",
"2.16.7",
"2.16.8",
"2.16.9",
"2.17.0",
"2.17.1",
"2.18.0",
"2.18.1",
"2.18.2",
"2.18.3",
"2.19.0",
"2.19.1",
"2.19.2",
"2.19.3",
"2.19.4",
"2.19.5",
"2.19.6",
"2.19.7",
"2.19.8",
"2.19.9",
"2.2.0",
"2.20.0",
"2.20.1",
"2.20.10",
"2.20.11",
"2.20.12",
"2.20.13",
"2.20.14",
"2.20.15",
"2.20.16",
"2.20.17",
"2.20.18",
"2.20.19",
"2.20.2",
"2.20.20",
"2.20.21",
"2.20.22",
"2.20.23",
"2.20.24",
"2.20.25",
"2.20.3",
"2.20.4",
"2.20.5",
"2.20.6",
"2.20.7",
"2.20.8",
"2.20.9",
"2.3.0",
"2.3.1",
"2.3.2",
"2.4.0",
"2.4.1",
"2.4.2",
"2.4.3",
"2.4.4",
"2.4.5",
"2.5.0",
"2.6.0",
"2.6.1",
"2.6.2",
"2.6.3",
"2.6.4",
"2.6.5",
"2.6.6",
"2.6.7",
"2.6.8",
"2.6.9",
"2.7.0",
"2.7.1",
"2.7.10",
"2.7.11",
"2.7.12",
"2.7.2",
"2.7.3",
"2.7.4",
"2.7.5",
"2.7.6",
"2.7.7",
"2.7.8",
"2.7.9",
"2.8.0",
"2.8.1",
"2.8.2",
"2.8.3",
"2.8.4",
"2.8.5",
"2.8.6",
"2.8.7",
"2.82",
"2.9.0",
"3.0.0",
"3.0.0rc1",
"3.0.0rc10",
"3.0.0rc11",
"3.0.0rc12",
"3.0.0rc13",
"3.0.0rc14",
"3.0.0rc15",
"3.0.0rc16",
"3.0.0rc17",
"3.0.0rc18",
"3.0.0rc19",
"3.0.0rc2",
"3.0.0rc20",
"3.0.0rc3",
"3.0.0rc4",
"3.0.0rc5",
"3.0.0rc6",
"3.0.0rc7",
"3.0.0rc8",
"3.0.0rc9",
"3.0.1",
"3.0.10",
"3.0.11",
"3.0.11.dev1",
"3.0.11.dev10",
"3.0.11.dev2",
"3.0.11.dev3",
"3.0.11.dev4",
"3.0.11.dev5",
"3.0.11.dev6",
"3.0.11.dev7",
"3.0.11.dev8",
"3.0.12.dev1",
"3.0.12.dev2",
"3.0.12.dev3",
"3.0.2",
"3.0.3",
"3.0.4",
"3.0.5",
"3.0.5.dev1",
"3.0.5.dev2",
"3.0.5.dev3",
"3.0.5.dev4",
"3.0.6",
"3.0.7",
"3.0.8",
"3.0.9",
"3.0.9.dev1",
"3.0.9.dev2",
"3.0.9.dev3",
"3.1.0",
"3.1.1",
"3.1.1.dev1",
"3.1.1.dev2",
"3.1.1.dev3",
"3.1.1.dev4",
"3.1.1.dev5",
"3.1.1.dev6",
"3.1.10",
"3.1.10.dev1",
"3.1.10.dev2",
"3.1.10.dev3",
"3.1.11",
"3.1.11.dev1",
"3.1.11.dev2",
"3.1.11.dev3",
"3.1.11.dev4",
"3.1.11.dev5",
"3.1.12",
"3.1.12.dev1",
"3.1.12.dev2",
"3.1.12.dev3",
"3.1.12.dev4",
"3.1.12.dev5",
"3.1.13",
"3.1.13.dev1",
"3.1.13.dev2",
"3.1.13.dev3",
"3.1.13.dev4",
"3.1.13.dev5",
"3.1.13.dev6",
"3.1.14",
"3.1.14.dev1",
"3.1.14.dev2",
"3.1.14.dev3",
"3.1.14.dev4",
"3.1.15",
"3.1.15.dev1",
"3.1.15.dev2",
"3.1.15.dev3",
"3.1.15.dev4",
"3.1.15.dev5",
"3.1.15.dev6",
"3.1.16.dev1",
"3.1.16.dev2",
"3.1.16.dev3",
"3.1.16.dev4",
"3.1.16.dev5",
"3.1.16.dev6",
"3.1.16.dev7",
"3.1.2",
"3.1.2.dev1",
"3.1.2.dev2",
"3.1.3",
"3.1.3.dev1",
"3.1.3.dev2",
"3.1.3.dev3",
"3.1.3.dev4",
"3.1.3.dev5",
"3.1.4",
"3.1.5",
"3.1.5.dev1",
"3.1.5.dev2",
"3.1.5.dev3",
"3.1.5.dev4",
"3.1.5.dev5",
"3.1.6",
"3.1.6.dev1",
"3.1.6.dev2",
"3.1.6.dev3",
"3.1.6.dev4",
"3.1.6.dev5",
"3.1.6.dev6",
"3.1.6.dev7",
"3.1.6.dev8",
"3.1.6.dev9",
"3.1.7",
"3.1.7.dev1",
"3.1.7.dev2",
"3.1.7.dev3",
"3.1.7.dev4",
"3.1.8",
"3.1.8.dev1",
"3.1.9",
"3.1.9.dev1",
"3.1.9.dev2",
"3.1.9.dev3",
"3.2.0",
"3.2.1",
"3.2.10",
"3.2.10.dev1",
"3.2.10.dev2",
"3.2.10.dev3",
"3.2.10.dev4",
"3.2.11",
"3.2.12",
"3.2.12.dev1",
"3.2.12.dev2",
"3.2.12.dev3",
"3.2.12.dev4",
"3.2.13",
"3.2.13.dev2",
"3.2.13.dev3",
"3.2.13.dev4",
"3.2.14",
"3.2.14.dev1",
"3.2.14.dev2",
"3.2.14.dev3",
"3.2.15",
"3.2.15.dev1",
"3.2.15.dev2",
"3.2.15.dev3",
"3.2.15.dev4",
"3.2.15.dev5",
"3.2.15.dev6",
"3.2.15.dev7",
"3.2.15.dev8",
"3.2.15.dev9",
"3.2.16.dev1",
"3.2.2",
"3.2.2.dev1",
"3.2.2.dev2",
"3.2.3",
"3.2.4",
"3.2.5",
"3.2.6",
"3.2.7",
"3.2.7.dev1",
"3.2.8",
"3.2.8.dev1",
"3.2.8.dev2",
"3.2.8.dev3",
"3.2.8.dev4",
"3.2.9",
"3.3.0",
"3.3.1",
"3.3.2",
"3.3.2.dev1",
"3.3.2.dev2",
"3.3.3",
"3.3.3.dev1",
"3.3.4",
"3.3.4.dev1",
"3.3.4.dev2",
"3.3.4.dev3",
"3.3.5",
"3.3.5.dev1",
"3.3.5.dev2",
"3.3.5.dev3",
"3.3.5.dev4",
"3.3.6",
"3.3.6.dev1",
"3.3.6.dev2",
"3.3.6.dev3",
"3.3.6.dev4",
"3.3.7",
"3.3.7.dev1",
"3.3.8.dev1",
"3.3.8.dev2",
"3.3.8.dev3",
"3.3.8.dev4",
"3.4.0",
"3.4.1",
"3.4.1.dev1",
"3.4.1.dev2",
"3.4.1.dev3",
"3.4.1.dev4",
"3.4.1.dev5",
"3.4.10",
"3.4.10.dev1",
"3.4.11",
"3.4.11.dev1",
"3.4.11.dev2",
"3.4.11.dev3",
"3.4.11.dev4",
"3.4.11.dev5",
"3.4.12",
"3.4.12.dev1",
"3.4.12.dev2",
"3.4.12.dev3",
"3.4.12.dev4",
"3.4.13",
"3.4.13.dev1",
"3.4.13.dev2",
"3.4.13.dev3",
"3.4.14",
"3.4.14.dev1",
"3.4.14.dev2",
"3.4.14.dev3",
"3.4.14.dev4",
"3.4.15",
"3.4.15.dev1",
"3.4.15.dev2",
"3.4.15.dev3",
"3.4.15.dev4",
"3.4.16",
"3.4.16.dev1",
"3.4.16.dev2",
"3.4.16.dev3",
"3.4.16.dev4",
"3.4.16.dev5",
"3.4.16.dev6",
"3.4.17",
"3.4.18",
"3.4.18.dev1",
"3.4.18.dev2",
"3.4.18.dev3",
"3.4.18.dev4",
"3.4.18.dev5",
"3.4.19",
"3.4.19.dev1",
"3.4.19.dev2",
"3.4.19.dev3",
"3.4.19.dev4",
"3.4.19.dev5",
"3.4.2",
"3.4.2.dev1",
"3.4.2.dev2",
"3.4.2.dev3",
"3.4.2.dev4",
"3.4.2.dev5",
"3.4.20",
"3.4.20.dev1",
"3.4.20.dev2",
"3.4.21",
"3.4.21.dev1",
"3.4.21.dev2",
"3.4.21.dev3",
"3.4.21.dev4",
"3.4.21.dev5",
"3.4.22",
"3.4.23",
"3.4.23.dev1",
"3.4.23.dev2",
"3.4.23.dev3",
"3.4.24",
"3.4.24.dev1",
"3.4.24.dev2",
"3.4.24.dev3",
"3.4.24.dev4",
"3.4.24.dev5",
"3.4.25",
"3.4.25.dev1",
"3.4.25.dev2",
"3.4.25.dev3",
"3.4.25.dev4",
"3.4.25.dev5",
"3.4.26.dev1",
"3.4.26.dev2",
"3.4.26.dev3",
"3.4.26.dev4",
"3.4.26.dev5",
"3.4.26.dev6",
"3.4.3",
"3.4.3.dev1",
"3.4.3.dev2",
"3.4.4",
"3.4.4.dev1",
"3.4.4.dev2",
"3.4.5",
"3.4.5.dev1",
"3.4.5.dev2",
"3.4.5.dev3",
"3.4.5.dev4",
"3.4.5.dev5",
"3.4.6",
"3.4.6.dev1",
"3.4.6.dev2",
"3.4.7",
"3.4.7.dev1",
"3.4.7.dev2",
"3.4.7.dev3",
"3.4.7.dev4",
"3.4.7.dev5",
"3.4.7.dev6",
"3.4.7.dev7",
"3.4.7.dev8",
"3.4.7.dev9",
"3.4.8",
"3.4.8.dev1",
"3.4.8.dev2",
"3.4.8.dev3",
"3.4.8.dev4",
"3.4.8.dev5",
"3.4.8.dev6",
"3.4.8.dev7",
"3.4.8.dev8",
"3.4.9",
"3.4.9.dev1",
"3.4.9.dev2",
"3.4.9.dev3",
"3.4.9.dev4",
"3.4.9.dev5",
"3.5.0",
"3.5.1.dev1",
"3.5.1.dev2",
"3.5.1.dev3",
"3.5.1.dev4",
"3.6.0",
"3.6.1",
"3.6.1.dev1",
"3.6.10",
"3.6.11",
"3.6.12",
"3.6.13",
"3.6.13.dev2",
"3.6.14",
"3.6.14.dev1",
"3.6.14.dev2",
"3.6.14.dev3",
"3.6.14.dev4",
"3.6.14.dev5",
"3.6.14.dev6",
"3.6.14.dev7",
"3.6.15",
"3.6.16",
"3.6.16.dev2",
"3.6.16.dev3",
"3.6.16.dev4",
"3.6.16.dev5",
"3.6.16.dev6",
"3.6.16.dev7",
"3.6.17",
"3.6.17.dev1",
"3.6.17.dev4",
"3.6.17.dev5",
"3.6.17.dev6",
"3.6.18",
"3.6.18.dev1",
"3.6.18.dev2",
"3.6.18.dev3",
"3.6.18.dev4",
"3.6.18.dev5",
"3.6.18.dev6",
"3.6.2",
"3.6.2.dev1",
"3.6.3",
"3.6.3.dev1",
"3.6.3.dev2",
"3.6.3.dev3",
"3.6.4",
"3.6.4.dev1",
"3.6.5",
"3.6.5.dev1",
"3.6.5.dev2",
"3.6.5.dev3",
"3.6.5.dev4",
"3.6.6",
"3.6.7",
"3.6.7.dev3",
"3.6.8",
"3.6.8.dev3",
"3.6.9"
]
}
],
"aliases": [
"CVE-2026-3515",
"GHSA-cw25-2p92-7f75"
],
"details": "A vulnerability in the `GitHubRepository` block of the `prefect-github` integration in Prefect version 3.6.18 allows an attacker to inject arbitrary git command-line options via the `reference` field. The `reference` field is concatenated directly into a `git clone` command string without proper sanitization, and then parsed by `shlex.split()`. This enables injection of options such as `-c`, leading to potential Server-Side Request Forgery (SSRF), credential theft, or remote code execution (RCE). The vulnerability affects both the `aget_directory()` and `get_directory()` methods in `src/integrations/prefect-github/prefect_github/repository.py`. This issue does not affect the GitLab and BitBucket integrations, which use a safer list-based command construction approach.",
"id": "PYSEC-2026-2957",
"modified": "2026-07-13T16:05:46.509039Z",
"published": "2026-07-13T15:19:11.737226Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-3515"
},
{
"type": "PACKAGE",
"url": "https://github.com/PrefectHQ/prefect"
},
{
"type": "WEB",
"url": "https://huntr.com/bounties/f3b048b8-7f4e-45ef-a5a7-cb841c39acde"
},
{
"type": "PACKAGE",
"url": "https://pypi.org/project/prefect"
},
{
"type": "ADVISORY",
"url": "https://github.com/advisories/GHSA-cw25-2p92-7f75"
}
],
"severity": [
{
"score": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N",
"type": "CVSS_V3"
}
],
"summary": "Prefect has an Argument Injection issue"
}