CVE-2026-111763
*Impact.** A malicious or compromised A2A agent can cause the client's API key credential to be forwarded to an arbitrary third-party server. The agent serves an AgentCard with an `APIKeySecurityScheme` specifying a custom header name, then responds with an HTTP redirect. The JDK HttpClient follows the redirect and forwards the custom header containing the credential, since only the standard `Authorization` header may be stripped on cross-origin redirects. **Where.** `client/transport/spi/src/main/java/org/a2aproject/sdk/client/transport/spi/interceptors/auth/AuthInterceptor.java:69` in `intercept` **What.** The `apiKeySecurityScheme.name()` field from the remote agent's AgentCard (untrusted, server-controlled data) is used directly as the HTTP header name when placing client credentials. Combined with `JdkA2AHttpClient`'s `followRedirects(NORMAL)` policy, credentials under custom header names survive cross-origin redirects (only `Authorization` is stripped on newer JDKs), allowing a malicious agent to leak client credentials to third-party servers. Additionally, `AuthInterceptor` does not check that `location==HEADER` before placing the credential as a header. **Exploit scenario.** Client configures an API key credential for agent's security scheme `myAuth`. The malicious agent returns an AgentCard where `securitySchemes` includes `myAuth` as `APIKeySecurityScheme` with `name='X-Leaked-Cred'` and `location=HEADER`. `AuthInterceptor` places the credential in the `X-Leaked-Cred` header. The agent responds with HTTP 302 redirect to `https://evil.com/collect`. `JdkA2AHttpClient` follows the redirect, forwarding all custom headers including `X-Leaked-Cred` to `evil.com`. The attacker captures the client's credential. **Preconditions.** - Client application has configured API key credentials via `CredentialService` for the agent's security scheme - The agent is malicious or compromised (controls its own AgentCard response) - The default `JdkA2AHttpClient` is used (wi
Properties
- Severity
- medium
- Summary
- A2A Java SDK send client credentials under server-controlled HTTP header name, enabling leakage via redirect
- Nvd fetched at
- 2026-10-20T21:14:08.448323+00:00
- Cvss severity
- MEDIUM
- Cvss score
- 5.7
- Retrieved at
- 2026-10-21T01:23:59+00:00
- Ghsa published
- 2026-10-20T21:04:16Z
- Source url
- https://github.com/advisories/GHSA-9rhm-2h4x-jwmx
- Ghsa updated
- 2026-10-20T21:04:17Z
- Ghsa id
- GHSA-9rhm-2h4x-jwmx
- Last source
- GitHub Advisory Database
- Score
- 5.7
- Cvss version
- 4.0
- Cve id
- CVE-2026-111763
- Cvss vector
- CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
- First seen by Signal
- 2026-10-20T17:10:14+00:00
- Is ghsa only
- false
- Vector
- CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
- Published at
- 2026-10-20T16:17:00.550
- Last modified
- 2026-10-20T19:48:50.250
Related Entities (3)
AFFECTS (1)
HAS_WEAKNESS (1)
VULNERABLE_TO (1)
Explore deeper with Ninja Signal's threat intelligence graph