
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2025-67505 is a race condition vulnerability in the Okta Java Management SDK affecting versions 11.0.0 through 20.0.0. The flaw exists in the ApiClient class, where concurrent requests can cause a status code or response header from one request's response to influence another request's response. It was discovered by João Abecasis (biochimia) and disclosed on December 10, 2025, via a GitHub Security Advisory. The vulnerability carries a CVSS v3.1 base score of 8.4 (High) (Github Advisory, Okta Advisory).
The root cause is classified as CWE-362 (Concurrent Execution using Shared Resource with Improper Synchronization). The invokeAPI() method in the ApiClient class was not synchronized, creating a timing window where shared response state — specifically HTTP status codes and response headers — could be read or written by multiple threads simultaneously. The fix, applied in commit abf4f12, was a single-line change adding the synchronized keyword to the invokeAPI() method signature, preventing concurrent access to shared response data (Okta Advisory, Fix Commit). Exploitation requires the target application to be multithreaded, use a shared ApiClient instance across threads, and rely on the response status code in access control flows (Github Advisory).
Successful exploitation could allow a low-privileged network attacker to cause unauthorized information disclosure or data manipulation by having response data from one concurrent API request bleed into another. In access control contexts, this could result in a request receiving an incorrect HTTP status code — for example, a 200 OK from a privileged operation being returned to an unprivileged request — potentially bypassing authorization checks. The CVSS scope is rated as Changed, indicating that the impact can extend beyond the vulnerable component itself to affect other resources managed via the Okta management API, including users, groups, and applications (Okta Advisory, Github Advisory).
ApiClient instance across multiple threads and uses the HTTP response status code in access control logic.invokeAPI() method of the ApiClient class.ApiClient state at the same moment an unprivileged request reads that state, causing the unprivileged request to receive the privileged response status code or headers./api/v1/logs) showing access to resources inconsistent with the requesting account's privilege level.The primary remediation is to upgrade the Okta Java Management SDK to version 21.0.0 or greater (the advisory initially referenced 20.0.1, but the official resolution specifies 21.0.0+), which includes the fix that adds the synchronized keyword to the invokeAPI() method (Okta Advisory, Fix Commit). As a temporary workaround for applications that cannot immediately upgrade, avoid sharing a single ApiClient instance across multiple threads — instead, instantiate a separate ApiClient per thread or use thread-local instances. Additionally, review audit logs for anomalous concurrent API access patterns and restrict SDK-using service accounts to the minimum necessary privileges to reduce the potential impact of exploitation.
The vulnerability was responsibly disclosed by researcher João Abecasis (biochimia) and acknowledged by Okta in the official security advisory (Okta Advisory). A Medium article titled "CVE-2025-67505: When Race Conditions Undermine Identity Infrastructure" was published shortly after disclosure, highlighting the broader implications of race conditions in identity management SDKs. Community aggregators including CIRCL Vulnerability Lookup, VulnDB, and INCIBE-CERT indexed the vulnerability promptly, and it was noted in a roundup of high-severity CVEs published on December 11, 2025.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."