CVE Catalog

CVE-2026-107685

CriticalCVSS 9.1
Published: Translated: NVD NIST

Summary

The WebSocket streaming client in agentjido req_llm starts WebSockex without TLS options, so WebSockex defaults to insecure: true and connects with verify: :verify_none, meaning the server certificate is not validated. The option allowlist also drops any caller-supplied cacerts or ssl_options, so an application cannot enable verification. The OpenAI Responses, Realtime, and Codex WebSocket paths send the API key or OAuth access token in the authorization header, which an on-path attacker can read and modify.

Risk Assessment

An on-path attacker can intercept and modify OpenAI WebSocket sessions, including the authorization bearer token, leading to API credential theft and impersonation of the application. This affects req_llm from 1.9.0 before 1.29.0.

Recommendation

Upgrade req_llm to version 1.29.0 or later, which fixes the issue. Until then, consider limiting use of the OpenAI WebSocket paths or enforcing secure transport at the infrastructure level.

Related vulnerabilities

Original NVD description (English source)

Improper Certificate Validation vulnerability in the WebSocket streaming client in agentjido req_llm allows an on-path attacker to read and modify OpenAI WebSocket sessions, including the authorization bearer token, via a TLS certificate the client does not trust. ReqLLM.Streaming.WebSocketSession.Client.start/3 in lib/req_llm/streaming/web_socket_session/client.ex starts WebSockex without TLS options, and WebSockex defaults to insecure: true, which connects with verify: :verify_none. The option allowlist also drops any caller-supplied cacerts or ssl_options, so an application cannot turn verification on. The OpenAI Responses, Realtime, and Codex WebSocket paths reach this client and send the API key or OAuth access token in the authorization header. HTTP streaming through Finch and the HTTP/2 duplex session through Mint verify certificates and are not affected. This issue affects req_llm: from 1.9.0 before 1.29.0.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS