HarnessRouter is a self-hosted unified API for running agent harnesses with sessions, streaming, files, cancellation, and failure handling. Prior to 0.31.8, a console that is not in self-hosted mode attaches the server's internal key to requests carrying an Authorization header before validating the bearer, while the service-only PUT and GET /v1/orgs/{org}/connections/{name}, PUT /v1/orgs/{org}/policy/{backend}, and /internal/* routes trust that key and take the organization from the URL. In a multi-organization deployment, a remote caller can use a made-up bearer to rewrite another organization's provider connection to an attacker-controlled endpoint, causing later prompts to be disclosed and attacker-controlled responses to influence tasks. This issue is fixed in version 0.31.8.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-862",
"CWE-863"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/125xxx/CVE-2026-125331.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "0.31.8"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "28609ec65ed671112d7e5418926bbd3cb3b25c00"
}
],
"source": "REFERENCES_COMMIT"
},
{
"original_tag": "v0.31.8",
"range": [
{
"fixed": "28609ec65ed671112d7e5418926bbd3cb3b25c00"
}
],
"source": "REFERENCES_TAG"
}
]
}