On September 11, 2026, Socket’s threat research team revealed that a browser extension popular with Twitch viewers, “Twitch Enhanced Viewer | JeetBot”, was sending its users’ OAuth tokens to proxies run by a commercial Russian-language bot service. Around 31,000 installations across Chrome and Firefox were affected. The token travelled in cleartext inside request URLs, and therefore landed in third-party server logs. Beyond Twitch, the case shows a very concrete risk for businesses: a “quality-of-life” extension can expose session credentials without a single password being stolen.
- Marketed as a convenience tool (ad blocking, forced 1080p, region unlocking), the extension rerouted video streams through its operator’s proxies and attached the Twitch account’s OAuth token.
- That token is a bearer credential: it grants access to chat, whispers, account settings and channel points, with no password or second factor required.
- According to Socket, the extension did not need the token to work, and its privacy disclosures stated that no data was collected.
- The developer fixed the extension after publication: version 85.8.7 on Firefox, 85.8.9 on Chrome. Users should update and revoke their Twitch sessions.
What happened
The extension was distributed through the Chrome Web Store and Firefox Add-ons. JeetBot, the service behind it, is a commercial Russian-language bot SaaS for Twitch, Kick and VK Live. Socket, a software supply chain security firm, analyzed its code and published its findings on September 11, 2026, followed by updates on September 16 and 25 after the developer responded.
The core finding: for any Twitch channel, the video playback request was redirected to an operator-controlled proxy, with the user’s OAuth token appended as a URL parameter. There was one telling exception. For a hardcoded list of ten Russian-language streamer channels, traffic went through the same proxy without the token. For Socket, this proves the token was not required for the service to function.
Technical analysis
How the token was captured and forwarded
Based on Socket’s analysis, the chain worked as follows:
- a content script read the
Authorizationheader used by Twitch, along with the device ID, and passed them to the extension’s background worker; - the worker extracted the raw OAuth token and validated it against Twitch’s validation endpoint;
- video requests to
usher.ttvnw.netwere redirected to the operator’s proxy, with the token added in an&auth=parameter; - sitting in the query string, the token showed up in cleartext in the proxy’s logs.
The mechanism was identical on both browsers: a blocking webRequest listener on Firefox and a declarativeNetRequest regex substitution rule on Chrome. The operator’s server decided dynamically which proxy received the traffic.
Earlier versions were more direct
The 4.x builds (for example 4.8, from January 2026) went further: a module explicitly POSTed the token to a set-token endpoint on the operator’s infrastructure, with fallback servers hosted on Deno. Send errors were silently ignored, and a cooldown mechanism avoided repeated sends, which Socket says implies server-side token storage. Those endpoints were later decommissioned and no longer appear in recent builds.
| Period / version | Behavior described by Socket |
|---|---|
| v4.x (including 4.8, January 2026) | Token explicitly sent to a set-token endpoint |
| 7.2.6 (April 25, 2026) → 85.2.2 (May 20, 2026) | Version number jump; token forwarding in the URL (&auth=) appears |
| 85.2.2 to 85.8.4 | Token forwarded to the proxy for every non-allowlisted channel |
| Firefox 85.8.7 (September 2026) | auth parameter emptied and tokens stripped from requests |
| Chrome 85.8.9 (live as of September 25, 2026) | Equivalent fix released after Chrome Web Store review |
Why this token matters
This is not a narrow playback token: it is scoped to the account. According to Socket, whoever holds it can read and send whispers, post in chat, access account settings and spend channel points, without knowing the password and without triggering a second factor. That is precisely what makes this kind of leak dangerous: strong authentication is bypassed because the session already exists.
Who is affected?
Directly: users who installed a version earlier than 85.8.7 (Firefox) or 85.8.9 (Chrome). Indirectly: any organization that lets employees freely install extensions on browsers also used for business services, including marketing or communications teams managing streaming accounts, content creators, and any workstation where a broadly permissioned extension can see authentication headers.
Why it matters for your organization
Browser extensions can reach extremely sensitive data: authentication headers, session cookies, page content. An extension that routes traffic through a third-party proxy can harvest access tokens for SaaS applications, with no classic malware and no antivirus alert. Store privacy disclosures are no guarantee: in this case, they explicitly claimed that no data was collected.
The risk is even harder to spot because extension updates are automatic: an extension that was harmless when installed can change behavior months later.
MITRE ATT&CK mapping
Mapping provided by Socket in its analysis:
| Technique | Observed behavior |
|---|---|
| T1176 — Browser Extensions | Extension distributed through the official Chrome and Firefox stores |
| T1539 — Steal Web Session Cookie | Capture of the Twitch session OAuth token |
| T1557 — Adversary-in-the-Middle | Video requests rerouted through the operator’s proxy |
| T1071.001 — Web Protocols | Token transmitted inside HTTP(S) requests |
Recommendations
- ImmediateUpdate or remove the extension
Search your fleet for Chrome ID
pnhhdhhcadcjfckjhpmjneldiegbojfband Firefox IDtwitchenhancedviewer@example.com. Flag any version earlier than 85.8.7 (Firefox) or 85.8.9 (Chrome). - ImmediateRevoke Twitch sessions
Affected users should disconnect all Twitch sessions and sign in again to invalidate potentially exposed tokens.
- Short termEnforce an extension allowlist
Use Chrome, Edge and Firefox management policies to allow only approved extensions and block free installation on corporate devices.
- Short termAssess permissions, not descriptions
Treat any extension with permissions over authenticated domains that also routes traffic to third-party destinations as a credential exposure risk, whatever its marketing says.
- Medium termInventory and monitor continuously
Make extension inventory part of asset management, and watch proxy or DNS logs for browser connections to unknown proxy domains.
- Medium termRaise user awareness
Explain that a free extension promising to block ads or unlock content may have access to every session open in the browser.
Browser extensions remain one of the most common blind spots in endpoint security. A stolen session is worth a password and a second factor, and no strong authentication protects a token that has already been issued.
Our SOC, Detection & Response service watches for anomalous sign-ins and suspicious session use. Our Training & Awareness programs help your teams recognize risky extensions and tools.
- Malicious Twitch Browser Extension Exposes 30,000 Users’ OAuth Tokens to Russian Bot ServiceSocket Threat Research — Kush Pandya — September 11, 2026, updated September 16 and 25, 2026
- Malicious Twitch Extension Exposes 31,000 Users’ OAuth TokensInfosecurity Magazine — September 2026
- Original report on the malicious Twitch extensionThe Hacker News — September 2026
- MITRE ATT&CK® — Enterprise MatrixMITRE Corporation
