CVE-2026-35589
Homebrew vulnerability analysis and mitigation

Overview

CVE-2026-35589 is a Cross-Site WebSocket Hijacking (CSWSH) vulnerability in the nanobot personal AI assistant's WhatsApp bridge component (bridge/src/server.ts). It affects all versions of the nanobot-whatsapp-bridge npm package up to and including 0.1.4.post6, and was disclosed on April 14, 2026. The vulnerability results from an incomplete remediation of a prior issue (CVE-2026-2577): while the WebSocket server was rebound to 127.0.0.1, token authentication remains disabled by default and no Origin header validation is performed. It carries a CVSS v3.1 base score of 9.3 (Critical) per Feedly's assessment, and 8.0 (High) per the official GitHub advisory (GitHub Advisory).

Technical details

The root cause is classified as CWE-1385 (Missing Origin Validation in WebSockets). The WebSocket server in bridge/src/server.ts binds to 127.0.0.1:3001 but, when BRIDGE_TOKEN is not configured (the default), immediately accepts any incoming WebSocket connection without checking the Origin header. Because browsers do not enforce the Same-Origin Policy on WebSocket connections unless the server explicitly rejects cross-origin requests, a malicious webpage visited by the user can initiate a WebSocket handshake to ws://127.0.0.1:3001/ with an arbitrary Origin header and gain full API access. A public proof-of-concept Python script is available in the official advisory that demonstrates the attack by connecting with a spoofed Origin: https://attacker-website.com header (GitHub Advisory).

Impact

Successful exploitation grants an attacker full access to the nanobot WhatsApp bridge API, enabling them to hijack the victim's WhatsApp session, read all incoming messages, steal authentication QR codes (facilitating account takeover), and send arbitrary messages on behalf of the user. The confidentiality and integrity impacts are both rated High, as sensitive message content is exposed and the attacker can impersonate the victim in communications. Availability is not impacted, but the account takeover potential makes this a severe privacy and identity threat (GitHub Advisory).

Exploitability

A working proof-of-concept exploit (a complete Python script) is publicly available in the GitHub security advisory. Exploitation requires no privileges and only minimal user interaction — the victim must visit a malicious webpage while running the nanobot bridge without a BRIDGE_TOKEN configured. There is no evidence of in-the-wild exploitation at this time. The EPSS score is approximately 0.019% (0.000190), indicating low current exploitation probability. The vulnerability is not listed in the CISA KEV catalog (GitHub Advisory).

Exploitation steps

  1. Reconnaissance: Identify users running the nanobot WhatsApp bridge (version ≤ 0.1.4.post6) without a BRIDGE_TOKEN configured, listening on ws://127.0.0.1:3001/.
  2. Craft malicious page: Create a webpage containing JavaScript (or use the Python PoC script) that initiates a WebSocket connection to ws://127.0.0.1:3001/ with a cross-origin Origin header (e.g., Origin: https://attacker-website.com).
  3. Deliver to victim: Trick the target user into visiting the malicious webpage while the nanobot bridge is running (e.g., via phishing, malvertising, or a compromised site).
  4. Establish WebSocket connection: The browser (or PoC script) sends a WebSocket upgrade request to ws://127.0.0.1:3001/. Since no Origin validation or token check is performed, the server accepts the connection immediately.
  5. Exploit bridge API: Send crafted JSON commands over the established WebSocket, such as {"type": "send", "to": "+1234567890", "text": "Hello from attacker!"} to send messages, or issue commands to read incoming messages and steal QR codes.
  6. Achieve objective: Silently read all incoming WhatsApp messages, capture authentication QR codes for session cloning, or send unauthorized messages as the victim (GitHub Advisory).

Indicators of compromise

  • Network: Unexpected WebSocket connections to ws://127.0.0.1:3001/ originating from browser processes (e.g., Chrome, Firefox) rather than the expected Python client; WebSocket upgrade requests containing Origin headers from external or unknown domains.
  • Logs: Bridge server logs showing Python client connected entries at unexpected times or in rapid succession; absence of Token authentication enabled log line indicating BRIDGE_TOKEN is not set.
  • Process: WebSocket traffic from browser renderer processes to localhost port 3001; unexpected outbound WhatsApp messages not initiated by the user visible in WhatsApp message history.
  • Application: Unauthorized messages sent from the user's WhatsApp account; unexpected QR code scan events or new WhatsApp Web sessions appearing in the user's linked devices list (GitHub Advisory).

Mitigation and workarounds

Upgrade the nanobot-whatsapp-bridge npm package to version 0.1.5 or later, which addresses this vulnerability (nanobot v0.1.5 Release). As an interim workaround, configure the BRIDGE_TOKEN environment variable to enable token-based authentication for WebSocket connections, which prevents unauthenticated cross-origin access. Additionally, ensure no untrusted websites are visited while the bridge is running until the patch is applied (GitHub Advisory).

Community reactions

The vulnerability was noted on Bluesky and Mastodon social platforms shortly after disclosure, with automated CVE tracking accounts broadcasting the advisory. Security aggregators including VulDB, CIRCL, and INCIBE-CERT indexed the vulnerability. No significant named researcher commentary or major media coverage beyond standard CVE aggregation has been observed (GitHub Advisory).

Additional resources


SourceThis report was generated using AI

Related Homebrew vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-73939HIGH8.6
  • Homebrew logoHomebrew
  • helidon
NoNoAug 18, 2026
CVE-2026-73937HIGH8.2
  • Homebrew logoHomebrew
  • helidon
NoNoAug 18, 2026
CVE-2026-73938HIGH7.5
  • Homebrew logoHomebrew
  • helidon
NoNoAug 18, 2026
CVE-2026-73936HIGH7.5
  • Homebrew logoHomebrew
  • helidon
NoNoAug 18, 2026
CVE-2026-73935HIGH7.5
  • Homebrew logoHomebrew
  • helidon
NoNoAug 18, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management