PT-2026-121832
CVE-2026-107685
·
Published
2026-10-23
·
Updated
2026-10-23
Description by
CVSS 4.0
9.1
CriticalMetricsAV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Name of the Vulnerable Software and Affected Versions
req llm versions 1.9.0 through 1.28.0
Description
Improper certificate validation in the WebSocket streaming client allows an on-path attacker to read and modify OpenAI WebSocket sessions, including the
authorization bearer token. The function ReqLLM.Streaming.WebSocketSession.Client.start/3 in lib/req llm/streaming/web socket session/client.ex initiates WebSockex without TLS options. Because WebSockex defaults to insecure: true, it connects using verify: :verify none, which accepts any certificate. Additionally, the option allowlist discards caller-supplied cacerts or ssl options, preventing applications from enabling verification. This affects the OpenAI Responses, Realtime, and Codex WebSocket paths, which transmit API keys or OAuth access tokens in the authorization header.Recommendations
Update req llm to version 1.29.0 or later.
As a temporary workaround, keep the
openai stream transport provider option at its default :sse for OpenAI and OpenAI Codex providers and avoid calling ReqLLM.Providers.OpenAI.WebSocket.start responses session/2 directly.
Avoid using ReqLLM.OpenAI.Realtime.connect/2 on affected versions as it has no HTTP alternative. Found an issue in the description? Have something to add? Feel free to write us 👾