CVE-2026-55427: Coder SSH Config Injection Vulnerability (CVSS 8.3)
Coder, a platform that helps organizations set up remote development environments, has a vulnerability in versions prior to 2.29.7, 2.32.7, 2.33.8, and 2.34.2. The `coder config-ssh` command copies SSH configuration settings from the Coder server to a developer's local SSH config file without properly validating those settings. An attacker who controls or compromises the Coder server could inject malicious SSH configuration directives—including arbitrary commands—by embedding special characters into fields that get written to the user's SSH config. This could lead to remote code execution when the developer connects via SSH. Exploitation requires either server compromise, administrator access to specific settings, or a network position to intercept communications.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 8.3 HIGH · CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H
- Weaknesses (CWE)
- CWE-74, CWE-78
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-07-08 / 2026-07-08
NVD description (verbatim)
Coder allows organizations to provision remote development environments via Terraform. Prior to versions 2.29.7, 2.32.7, 2.33.8, and 2.34.2, `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. 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. The fix in versions 2.29.7, 2.32.7, 2.33.8, and 2.34.2 validates `HostnameSuffix` and `SSHConfigOptions` against a strict character set that rejects newlines and other control characters. As a workaround, inspect `coder config-ssh --dry-run` output before applying changes.
6 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
The vulnerability exists in how `coder config-ssh` handles the `HostnameSuffix` and `SSHConfigOptions` parameters received from the Coder server. These values are written directly into `~/.ssh/config` without sanitization of newline characters or validation of SSH directive syntax. An attacker with control over server-supplied values can inject newlines to create new SSH configuration directives, potentially including `ProxyCommand` or other commands that execute during SSH operations. The underlying issue is improper input validation (CWE-74: Improper Neutralization of Special Elements in Output Used by a Downstream Component) combined with OS command injection implications (CWE-78). The patches implement strict character-set validation that rejects control characters and newlines in both fields.
Business impact
For organizations using Coder, this vulnerability creates a supply-chain-like risk: a single compromised or malicious Coder deployment affects all connected developers. An attacker gaining administrative access to Coder settings or successfully compromising the Coder server could execute arbitrary commands on developer machines when those developers use SSH. This could result in theft of credentials, source code, private keys, or lateral movement into the development network or internal systems. The blast radius is particularly concerning because developers often have elevated privileges and access to sensitive systems.
Affected systems
Coder versions before 2.29.7, 2.32.7, 2.33.8, and 2.34.2 are vulnerable. Organizations should identify which version is deployed and cross-reference against the patched versions. Users of older release branches that do not have a corresponding patched version listed should contact Coder for guidance or migrate to a supported branch.
Exploitability
Exploitation is rated HIGH in impact but requires specific prerequisites: an attacker must control the Coder server (through compromise or malicious intent), have administrative access to the `HostnameSuffix` and `SSHConfigOptions` settings, or be positioned to perform a man-in-the-middle attack on communications between the developer and server. Remote unauthenticated exploitation is not possible. However, once those conditions are met, the attack is straightforward and highly effective, requiring only configuration changes rather than complex payload development. The user interaction requirement—developers must run `coder config-ssh`—is typical for this type of configuration tool.
Remediation
Upgrade Coder to version 2.29.7, 2.32.7, 2.33.8, or 2.34.2, depending on your current branch. As an interim workaround, administrators and developers can use `coder config-ssh --dry-run` to preview the SSH configuration changes before they are applied to `~/.ssh/config`, allowing manual inspection for suspicious directives. This does not fix the vulnerability but reduces the risk of silent injection.
Patch guidance
Apply the latest patch version corresponding to your current Coder release branch: 2.29.7 for the 2.29 series, 2.32.7 for 2.32, 2.33.8 for 2.33, or 2.34.2 for 2.34. Verify the patch version in the release notes and test in a non-production environment before rolling out broadly. After patching, the SSH configuration validation will reject any attempts to inject control characters or newlines via server-supplied settings.
Detection guidance
Monitor for anomalous SSH configuration in developers' `~/.ssh/config` files—specifically look for unexpected directives like `ProxyCommand`, `LocalForward`, or `RemoteForward` that do not match organizational standards. Audit Coder server logs for any modifications to `HostnameSuffix` or `SSHConfigOptions` settings, particularly by non-administrative accounts. If you suspect compromise, compare `~/.ssh/config` across developer machines against a baseline; unusual entries may indicate injection attempts. Consider implementing file integrity monitoring on critical SSH configuration locations.
Why prioritize this
This vulnerability scores 8.3 (HIGH CVSS) due to the potential for remote code execution on developer machines combined with high impact (confidentiality, integrity, and availability are all at risk). Although exploitation requires server-side compromise or specific prerequisites, the scope is cross-cutting (affects all developers using a compromised Coder instance) and the consequences are severe. Any organization relying on Coder for infrastructure should prioritize patching promptly to eliminate this post-compromise attack vector.
Risk score, explained
The CVSS 3.1 score of 8.3 reflects: (1) Network-accessible attack vector and high attack complexity (prerequisites required), (2) no privilege escalation needed from the Coder user perspective, (3) required user interaction (running the config-ssh command), (4) changed scope (impacts developer machines beyond the Coder server itself), and (5) high impact across all three security pillars—confidentiality (data theft), integrity (code modification), and availability (system compromise or disruption). The HIGH severity appropriately balances the serious consequences against the prerequisite requirements.
Frequently asked questions
What happens if I run `coder config-ssh` without updating Coder first?
If your Coder server is compromised or controlled by an attacker, running `coder config-ssh` on an unpatched version will blindly write injected SSH directives to your `~/.ssh/config`. You can mitigate this by using `coder config-ssh --dry-run` to inspect the output before applying it, but this requires manual vigilance. Upgrading to a patched version ensures automatic validation that blocks malicious input.
Does this vulnerability affect only developers or also Coder administrators?
Any user running `coder config-ssh` is at risk if the Coder server has been compromised. However, the initial attack vector requires either server compromise (which may affect operators first) or administrative modification of settings. Developers are the end-point targets of the attack, but both groups should ensure their Coder deployment is patched.
If I have a firewall or VPN protecting my Coder server, am I safe from this vulnerability?
Network controls reduce the attack surface and help prevent compromise, but they do not eliminate the vulnerability itself. If a Coder server is ever compromised from inside your network (insider threat, lateral movement, supply-chain compromise), the unpatched vulnerability becomes a direct threat to developer machines. Patching is the proper defense regardless of network posture.
Can I continue using Coder without running `coder config-ssh`?
Yes, `coder config-ssh` is a convenience tool to populate SSH configuration automatically. You can manually maintain your SSH config without using this command. However, this is a workaround, not a fix. Patching the Coder server and client is the recommended solution.
This analysis is based on information available at the time of publication. Patch versions, availability dates, and specific affected versions mentioned should be verified against the official Coder vendor advisory and security documentation. No exploit code or proof-of-concept is provided. Organizations should consult their security team and Coder support for environment-specific guidance. This vulnerability intelligence is provided for informational purposes and does not constitute a substitute for professional security assessment or advice. Source: NVD (public-domain), retrieved 2026-08-16. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2026-15035MEDIUMbentoml OpenLLM 0.6.30 Command Injection Vulnerability
- CVE-2026-44454HIGHCoder Dotfiles Command Injection RCE – Patch Now
- CVE-2025-27511HIGHGeoServer DB2 JNDI Injection Remote Code Execution
- CVE-2025-41265HIGHWaterfall WF-500 TX Host OS Command Injection (CVSS 7.2)
- CVE-2025-41266HIGHWaterfall WF-500 TX Host Command Injection Vulnerability Analysis
- CVE-2025-41267HIGHWaterfall WF-500 TX Host Command Injection Vulnerability
- CVE-2025-41279HIGHOS Command Injection in Waterfall WF-500 RX Host Administration WebUI
- CVE-2025-41281HIGHWaterfall WF-500 OS Command Injection