Skip to main content
← All vulnerabilities
CVE-2026-46354GO-2026-5196GHSA-6X44-W3XG-HQQF

Coder: PKCS#7 signature bypass in Azure instance identity allows unauthenticated agent token theft

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2.33.3, 2.32.2, 2.31.12, 2.30.8, 2.29.13, and 1 more
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: total

Summary

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 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`.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: total

  3. Record last updated

Affected versions

  • coder coder

    From 2.33.0-rc.0 · fixed in 2.33.3; From 2.32.0-rc.0 · fixed in 2.32.2; From 2.31.0 · fixed in 2.31.12; From 2.30.0 · fixed in 2.30.8; From 2.29.0 · fixed in 2.29.13; fixed in 2.24.5

  • github.com/coder/coderGo

    All versions

  • github.com/coder/coder/v2Go

    fixed in 2.24.5; From 2.29.0 · fixed in 2.29.13; From 2.30.0 · fixed in 2.30.8; From 2.31.0 · fixed in 2.31.12; From 2.32.0-rc.0 · fixed in 2.32.2; From 2.33.0-rc.0 · fixed in 2.33.3

  • github.com/coder/coder/v2Go

    From 2.33.0-rc.0 · fixed in 2.33.3

  • github.com/coder/coder/v2Go

    From 2.32.0-rc.0 · fixed in 2.32.2

  • github.com/coder/coder/v2Go

    From 2.31.0 · fixed in 2.31.12

  • github.com/coder/coder/v2Go

    From 2.30.0 · fixed in 2.30.8

  • github.com/coder/coder/v2Go

    From 2.29.0 · fixed in 2.29.13

  • github.com/coder/coder/v2Go

    fixed in 2.24.5

  • github.com/coder/coderGo

    through 0.27.3

References 8

GitHub · coder/coder