Coder's `config-ssh` CLI writes server-supplied SSH settings (HostnameSuffix, SSHConfigOptions) straight into a developer's `~/.ssh/config` without stripping embedded newlines, letting a malicious or compromised Coder server inject directives like `ProxyCommand` and achieve arbitrary code execution on any workstation that runs the command. With 5,435 downstream dependents and 35 other CVEs already tracked against this package, a single compromised, MITM'd, or insider-abused Coder deployment can pivot into every connected engineer's laptop with local-user privileges — and the injected directive applies to all SSH connections, not just Coder workspaces. There's no public exploit, no Nuclei template, and it isn't in CISA KEV, so this is a plausible-but-not-yet-weaponized supply-chain risk rather than an imminent mass-exploitation threat; exploitation still requires attacker control of server-side config or admin access. Patch to v2.34.2, v2.33.8, v2.32.7, or v2.29.17 (ESR) depending on your release line, and until every workstation is patched, treat `coder config-ssh --dry-run` review as mandatory and audit existing `~/.ssh/config` files for unexpected `ProxyCommand` entries.
What is the risk?
High severity (CVSS 8.3) but exploitation is gated by AC:H and PR:N/UI:R — the attacker needs control over server-supplied SSH settings (malicious/compromised Coder deployment, MITM position, or admin access), not a remotely triggerable bug on its own. No EPSS score, no CISA KEV listing, and no public exploit or scanner template exist yet, so real-world exploitation likelihood is currently low but the technique (SSH config directive injection via unsanitized newlines) is well documented and trivial to weaponize once an attacker has the required position. The realistic risk population is organizations self-hosting Coder for engineering/AI teams, especially where server admin duties are distributed or where Coder deployments could be MITM'd on untrusted networks.
How does the attack unfold?
What systems are affected?
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| Anthropic Python | go | >= 2.34.0, < 2.34.2 | 2.34.2 |
Do you use Anthropic Python? You're affected.
How severe is it?
What is the attack surface?
What should I do?
1 step-
1) Patch immediately to the version matching your release line: v2.34.2, v2.33.8, v2.32.7, or v2.29.17 (ESR). 2) Until patched, always run
coder config-ssh --dry-runand manually inspect output before applying. 3) Audit existing~/.ssh/configfiles on developer machines for unexpectedProxyCommand,Match, or other injected directives. 4) Restrict who can setHostnameSuffix/SSHConfigOptionson the Coder server to trusted admins only, and treat those settings as sensitive configuration requiring change control. 5) Monitor for unusual SSH connection behavior or unexpected process spawns correlated with SSH client invocation on developer endpoints.
What does CISA's SSVC say?
Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-55427?
Coder's `config-ssh` CLI writes server-supplied SSH settings (HostnameSuffix, SSHConfigOptions) straight into a developer's `~/.ssh/config` without stripping embedded newlines, letting a malicious or compromised Coder server inject directives like `ProxyCommand` and achieve arbitrary code execution on any workstation that runs the command. With 5,435 downstream dependents and 35 other CVEs already tracked against this package, a single compromised, MITM'd, or insider-abused Coder deployment can pivot into every connected engineer's laptop with local-user privileges — and the injected directive applies to all SSH connections, not just Coder workspaces. There's no public exploit, no Nuclei template, and it isn't in CISA KEV, so this is a plausible-but-not-yet-weaponized supply-chain risk rather than an imminent mass-exploitation threat; exploitation still requires attacker control of server-side config or admin access. Patch to v2.34.2, v2.33.8, v2.32.7, or v2.29.17 (ESR) depending on your release line, and until every workstation is patched, treat `coder config-ssh --dry-run` review as mandatory and audit existing `~/.ssh/config` files for unexpected `ProxyCommand` entries.
Is CVE-2026-55427 actively exploited?
No confirmed active exploitation of CVE-2026-55427 has been reported, but organizations should still patch proactively.
How to fix CVE-2026-55427?
1) Patch immediately to the version matching your release line: v2.34.2, v2.33.8, v2.32.7, or v2.29.17 (ESR). 2) Until patched, always run `coder config-ssh --dry-run` and manually inspect output before applying. 3) Audit existing `~/.ssh/config` files on developer machines for unexpected `ProxyCommand`, `Match`, or other injected directives. 4) Restrict who can set `HostnameSuffix`/`SSHConfigOptions` on the Coder server to trusted admins only, and treat those settings as sensitive configuration requiring change control. 5) Monitor for unusual SSH connection behavior or unexpected process spawns correlated with SSH client invocation on developer endpoints.
What systems are affected by CVE-2026-55427?
This vulnerability affects the following AI/ML architecture patterns: cloud/remote AI development environments, agent-assisted coding workflows, CI/CD pipelines for ML.
What is the CVSS score for CVE-2026-55427?
CVE-2026-55427 has a CVSS v3.1 base score of 8.3 (HIGH). The EPSS exploitation probability is 0.27%.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0010 AI Supply Chain Compromise AML.T0050 Command and Scripting Interpreter Compliance Controls Affected
What are the technical details?
Original Advisory
### Summary `coder config-ssh` wrote server-supplied SSH settings (`HostnameSuffix`, `SSHConfigOptions`) into the user's `~/.ssh/config` without sanitizing embedded newlines or restricting directives so a malicious or compromised Coder server could inject arbitrary SSH configuration. > **Note:** Practical exploitation requires control of the server-supplied values through a malicious or compromised deployment, a man-in-the-middle position or admin access to the `HostnameSuffix` and `SSHConfigOptions` settings. ### Impact A server administrator or an attacker who controlled the server, could inject a directive such as `ProxyCommand` and achieve arbitrary code execution on any developer workstation that ran `coder config-ssh`. Injected commands ran with the local user's privileges and applied to all SSH connections, not just Coder workspaces. ### Patches The fix validates `HostnameSuffix` and `SSHConfigOptions` against a strict character set that rejects newlines and other control characters. The fix was backported to all supported release lines: | Release line | Patched version | |---|---| | 2.34 | [v2.34.2](https://github.com/coder/coder/releases/tag/v2.34.2) | | 2.33 | [v2.33.8](https://github.com/coder/coder/releases/tag/v2.33.8) | | 2.32 | [v2.32.7](https://github.com/coder/coder/releases/tag/v2.32.7) | | 2.29 (ESR) | [v2.29.17](https://github.com/coder/coder/releases/tag/v2.29.17) | ### Workarounds Inspect `coder config-ssh --dry-run` output before applying changes. ### Resources - Fix: #26154 ### Credits Coder would like to thank Anthropic's Security Team (ANT-2026-22437) for independently disclosing this issue!
Exploitation Scenario
An attacker who compromises a self-hosted Coder deployment (or operates a malicious one, gains admin access, or achieves a MITM position against the Coder API) sets `HostnameSuffix` or `SSHConfigOptions` to a value containing an embedded newline followed by a `ProxyCommand` directive pointing at an attacker-controlled command. A developer on the AI/ML engineering team runs `coder config-ssh` to sync their local SSH configuration, and the unsanitized directive is written verbatim into `~/.ssh/config`. The next time that developer opens any SSH connection — to a Coder workspace or otherwise — the injected `ProxyCommand` executes with the developer's local privileges, giving the attacker code execution on the workstation and access to any locally stored credentials, including AI API keys and cloud ML service tokens.
Weaknesses (CWE)
CWE-74 Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')
Primary
CWE-78 Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
Primary
CWE-74 Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection') CWE-78 Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') CWE-74 — Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection'): The product constructs all or part of a command, data structure, or record using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify how it is parsed or interpreted when it is sent to a downstream component.
- [Requirements] Programming languages and supporting technologies might be chosen which are not subject to these issues.
- [Implementation] Utilize an appropriate mix of allowlist and denylist parsing to filter control-plane syntax from all input.
Source: MITRE CWE corpus.
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H References
Timeline
Related Vulnerabilities
CVE-2026-54449 8.8 LangBot: RCE via arbitrary STDIO MCP command
Same package: anthropic CVE-2026-27775 8.8 Gitea: cached permission check allows repo takeover
Same package: anthropic CVE-2026-7574 8.7 Claude Desktop: VM integrity bypass enables RCE
Same package: anthropic CVE-2026-55429 8.7 Coder: cross-workspace agent hijack via app ID reuse
Same package: anthropic CVE-2026-67428 8.5 Flyto2 Core: SSRF via unvalidated URLs in agent tools
Same package: anthropic