The web dashboard in Coder 2.24.0 before 2.29.23, 2.30.0 before 2.34.14, 2.35.0 before 2.36.9, 2.37.0 before 2.37.6, and 2.38.0 before 2.38.2 replaces the $SESSION_TOKEN placeholder in external app URLs with a full-access API key without checking whether the app belongs to a sub-agent. Code running in a workspace can register a disguised sub-agent app with a custom protocol URL, so the owner's click sends their API key to an attacker-chosen destination.
{
"cna_assigner": "VulnCheck",
"cwe_ids": [
"CWE-201"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/126xxx/CVE-2026-126308.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "2.38.0"
},
{
"fixed": "2.38.2"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "2.37.0"
},
{
"fixed": "2.37.6"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "2.36.0"
},
{
"fixed": "2.36.9"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "2.30.0"
},
{
"fixed": "2.34.14"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "2.24.0"
},
{
"fixed": "2.29.23"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "2.35.0"
},
{
"fixed": "2.36.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
}
]
}