Summary
The Coder agent runs an unauthenticated debug HTTP server on 127.0.0.1:2113 by default. Its /debug/manifest handler JSON-encoded the full agent manifest, including the values of EnvironmentVariables. Because the endpoint is reachable by any process in the workspace regardless of Unix user, template-provided environment values that may carry credentials (for example cloud keys or registry tokens) were readable by other, lower-privileged users in the same workspace.
Note: The dedicated workspace Secrets system is not exposed by this endpoint, and the same environment variables are already inherited by processes the owner runs. Practical impact is limited to disclosing template-set environment values to co-tenant Unix users who could not otherwise read the owner's environment, so this is rated low severity.
Impact
A low-privileged process or user inside a workspace (for example untrusted in-workspace code running as a separate Unix user) could fetch http://127.0.0.1:2113/debug/manifest and read the values of environment variables injected by the workspace template. When a template places secret material in environment variables, those secrets were disclosed across the Unix-user boundary within the workspace. No authentication bypass, cross-workspace access, or exposure of the separate Secrets store resulted.
Patches
The debug manifest response now redacts environment variable values, replacing them with ***REDACTED*** while preserving the keys so operators can still confirm which variables are configured. This matches the existing support-bundle sanitizeEnv behavior. Empty values, which carry no secret, are preserved.
Workarounds
Avoid injecting secret material through template environment variables; use the workspace Secrets mechanism instead. Restrict workspace access to trusted users, since any co-tenant process could otherwise read the manifest.
References
Credits
We'd like to thank Anthropic's Security Team (ANT-2026-22461) for independently disclosing this issue!
Summary
The Coder agent runs an unauthenticated debug HTTP server on
127.0.0.1:2113by default. Its/debug/manifesthandler JSON-encoded the full agent manifest, including the values ofEnvironmentVariables. Because the endpoint is reachable by any process in the workspace regardless of Unix user, template-provided environment values that may carry credentials (for example cloud keys or registry tokens) were readable by other, lower-privileged users in the same workspace.Impact
A low-privileged process or user inside a workspace (for example untrusted in-workspace code running as a separate Unix user) could fetch
http://127.0.0.1:2113/debug/manifestand read the values of environment variables injected by the workspace template. When a template places secret material in environment variables, those secrets were disclosed across the Unix-user boundary within the workspace. No authentication bypass, cross-workspace access, or exposure of the separate Secrets store resulted.Patches
The debug manifest response now redacts environment variable values, replacing them with
***REDACTED***while preserving the keys so operators can still confirm which variables are configured. This matches the existing support-bundlesanitizeEnvbehavior. Empty values, which carry no secret, are preserved.Workarounds
Avoid injecting secret material through template environment variables; use the workspace Secrets mechanism instead. Restrict workspace access to trusted users, since any co-tenant process could otherwise read the manifest.
References
Credits
We'd like to thank Anthropic's Security Team (ANT-2026-22461) for independently disclosing this issue!