🛡️ JLSEC-2026-622 — http
Description
Predictable WebSocket masking key and handshake nonce in HTTP.jl client
Description
The WebSocket client masking key (ws_send_frame!) and the Sec-WebSocket-Key handshake nonce (ws_random_handshake_key) were generated with rand(UInt8, n), which draws from the task-local Xoshiro256++ PRNG. Xoshiro is not cryptographically secure: its internal state can be recovered from a short run of observed outputs, and every outbound client frame exposes 4 mask bytes on the wire. An on-path observer could therefore recover the RNG state and predict all future masking keys, defeating the RFC 6455 §5.3 anti-cache-poisoning purpose of masking.
Impact
Predictable masking keys could let an on-path attacker who also supplies payload craft wire bytes that a non-conformant transparent proxy parses and caches (request/response smuggling and cache poisoning).
Patches
Fixed in HTTP.jl v2.4.0. A module-level CSPRNG (const WS_CSPRNG = Random.RandomDevice()) now generates both the 4-byte masking key and the 16-byte handshake nonce. The wire format and public API are unchanged.
Reported to the JuliaLang security team through Anthropic's Coordinated Vulnerability Disclosure program.
Affected software
JLSEC-2026-622 is recorded against 1 package.
- http
Timeline and source
Published on 23 June 2026 and last revised on 21 July 2026. No public exploit is currently recorded for this entry. Record sourced from OSV.
References
Details
Affected Packages
| Software | From version | Fixed in |
|---|---|---|
| http | — | — |
References
Similar Threats
- Unknown JLSEC-2026-611
- Unknown JLSEC-2026-612
- Unknown JLSEC-2026-613
- Unknown JLSEC-2026-614
- Unknown JLSEC-2026-615
Free Vulnerability Check
Is your site affected by JLSEC-2026-622?
BotEraser helps you identify potentially vulnerable plugins and themes by checking your installation against JLSEC-2026-622 and other known CVE records.
Scan My Site Free →No credit card required · Results in minutes
ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.