GHSA-373r-678h-hjc6: Coder before 2.29.22, 2.34.13, 2.35.10, 2.36.8, 2.37.5, and 2.38.1 AI Gateway Path Traversal
Coder 2.28.0 before 2.29.22, 2.30.0 before 2.34.13, 2.35.0 before 2.35.10, 2.36.0 before 2.36.8, 2.37.0 before 2.37.5, and 2.38.0 before 2.38.1 contains a path traversal vulnerability in the AI Gateway passthrough router, which forwards percent-encoded dot segments upstream without rejecting them. Authenticated users can send paths such as %2e%2e or ..%2F under allowlisted prefixes to reach unintended provider endpoints using the deployment's centrally managed provider key.
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Coderto a version that resolves this vulnerability.Fixed in 2.29.22 - Upgrade
Upgrade
Coderto a version that resolves this vulnerability.Fixed in 2.34.13 - Upgrade
Upgrade
Coderto a version that resolves this vulnerability.Fixed in 2.35.10 - Upgrade
Upgrade
Coderto a version that resolves this vulnerability.Fixed in 2.36.8 - Upgrade
Upgrade
Coderto a version that resolves this vulnerability.Fixed in 2.37.5 - Upgrade
Upgrade
Coderto a version that resolves this vulnerability.Fixed in 2.38.1
Event History
Frequently Asked Questions
Who is exposed to this issue?
Deployments using the AI Gateway passthrough router are exposed if they run an affected Coder release. Exploitation requires an authenticated user, and the impact concerns provider endpoints reachable through allowlisted AI Gateway prefixes.
What does an attacker need to exploit it?
An attacker needs valid authentication and must craft a request containing percent-encoded or traversal dot segments, such as %2e%2e or ..%2F, beneath an allowlisted path prefix. The attack complexity is high and requires the relevant conditions represented by the advisory's attack vector.
What is the risk if exploitation succeeds?
The attacker may reach unintended upstream provider endpoints using the deployment's centrally managed provider key. The stated impact includes low confidentiality and integrity impact for both the vulnerable system and subsequent systems, with no availability impact.
Which releases contain the fix?
Upgrade to 2.29.22, 2.34.13, 2.35.10, 2.36.8, 2.37.5, or 2.38.1, as applicable to the release line in use. Affected ranges begin with 2.28.0, 2.30.0, 2.35.0, 2.36.0, 2.37.0, and 2.38.0 respectively.