CVE-2026-46354
Coder ≤ 2.24.5
Raw vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:NSummary
CVE-2026-46354 is a critical-severity Improper Verification of Cryptographic Signature (CWE-347) vulnerability in Coder Coder. Its CVSS base score is 9.1 (Critical).
Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 18th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.
The strongest mitigations our analysis identified map to SC-8 (Transmission Confidentiality and Integrity) and SI-7 (Software, Firmware, and Information Integrity) — see the control section below for these in your framework.
OWASP Top 10 for Web (2025)
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2026-42111
Vulnerability Data
Coder allows organizations to provision remote development environments via Terraform. In versions prior tp 2.24.5, 2.29.13, 2.30.8, 2.31.12, 2.32.2, and 2.33.3, `azureidentity.Validate()` verifies that the PKCS#7 signer certificate chains to a trusted Azure CA but never verifies the PKCS#7 signature…
more
itself. An attacker can embed a legitimate Azure certificate alongside arbitrary content e.g. `{"vmId":"<target>"}` and the forged `vmId` will be accepted returning the victim workspace agent's session token. No authentication is required. The attacker only needs to know a target VM's `vmId` which is a `UUIDv4`. That's a practical limitation which would typically require prior access to be exploited. Versions 2.24.5, 2.29.13, 2.30.8, 2.31.12, 2.32.2, and 2.33.3 patch the issue. As a workaround, reconfigure any Azure templates to use token authentication rather than `azure-instance-identity`.
- CWE(s)
Related Threats
MITRE ATT&CK Enterprise TechniquesAI
Why these techniques?
CVE-2026-46354 is an unauthenticated flaw in Coder's azureidentity.Validate() that accepts forged Azure instance identity documents, directly enabling exploitation of a public-facing application (T1190) to steal application access tokens (T1528) for workspace agents.
CVEs Like This One
Affected Assets
Mitigating Controls
Control response
- 14 hardening rules · 5 OS baselines
—
Mitigating Controls (NIST 800-53 r5) AI
Enforces cryptographic integrity and confidentiality on all transmitted data, directly preventing acceptance of an unsigned or forged PKCS#7 payload that carries a spoofed vmId.
Requires verification of software/firmware/information integrity, ensuring the PKCS#7 signature is validated before any vmId-derived session token is issued.
Enforces access-control decisions only after proper identity validation; the missing signature check bypasses this enforcement, allowing an unauthenticated attacker to obtain an agent token.
Mitigating Controls (NIST CSF 2.0) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.
Digital signatures are explicitly cited to protect integrity of data-at-rest, so proper verification directly mitigates the weakness.
Digital signatures are explicitly cited to protect integrity of data-in-transit, so proper verification directly mitigates the weakness.
Requires assessing authenticity and integrity of acquired assets, which commonly relies on signature verification but is limited to pre-acquisition.
Secure SDLC practices include code signing and signature verification requirements, addressing the weakness during development.
Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.
Establishing approved cryptographic solutions and usage practices lowers the probability that signature-verification steps will be omitted or incorrectly implemented.
Hardening callouts derived
Configuration rules from DISA STIG baselines that reduce the attack surface for weaknesses of the type cited by this CVE. Derived transitively via CVE→CWE→STIG over `controls_xwalks` (authoritative rows only).
Oracle Linux 8 (2 rules)
- V-248574 YUM must be configured to prevent the installation of patches, service packs, device drivers, or OL 8 system components that have not been digitally signed using a certificate that is recognized and approved by the organization. via CWE-347
- V-248575 OL 8 must prevent the installation of software, patches, service packs, device drivers, or operating system components of local packages without verification they have been digitally signed using a certificate that is issued by a Certificate Authority (CA) that is recognized and approved by the organization. via CWE-347
Oracle Linux 9 (2 rules)
- V-271523 OL 9 must check the GPG signature of locally installed software packages before installation. via CWE-347
- V-271525 OL 9 must have GPG signature verification enabled for all software repositories. via CWE-347
RHEL 8 (1 rule)
- V-230264 RHEL 8 must prevent the installation of software, patches, service packs, device drivers, or operating system components from a repository without verification they have been digitally signed using a certificate that is issued by a Certificate Authority (CA) that is recognized and approved by the organization. via CWE-347
RHEL 9 (1 rule)
- V-257822 RHEL 9 must have GPG signature verification enabled for all software repositories. via CWE-347