Is sprint.youtube - YouTube Speed Up safe?

High risk

Sprint YouTube Speed Up routes YouTube and Google video traffic through proxy servers it fetches from speedyext.ru.

When connected, the extension retrieves a proxy IP, port, and credentials from speedyext.ru and installs a PAC script that tunnels youtube.com, googlevideo.com, and related domains through that proxy. The list of proxied domains is pulled from a remote config on s3.twcstorage.ru every three minutes and can be updated by the operator at any time. On first install, the extension also registers a browser fingerprint with speedyext.ru and receives a persistent tracking ID used in all subsequent API calls.

hyper.enclavev2.0.7Chrome Web Store
78Risk
Who publishes it

hyper.enclave - no other listings under this identity, 3 shared hostnames

What this publisher told the store about itself, and the other listings that told it the same thing.

Publisher
hyper.enclave

Shared hosts - 3 hostnames

Hostnames hardcoded in this extension that few other listings call. That can mean one operator behind both, and it can equally mean a small shared vendor, so it is context rather than a conclusion. Hosts that many listings call are left out: they are services, not connections.

speedyext.ru
Also called by 1 other listing: sprint-ускорение-youtube
sprint-ext.ru
Also called by 1 other listing: sprint-ускорение-youtube
s3.twcstorage.ru
Also called by 2 other listings: sprint-ускорение-youtube, Free VPN with bypass of locks — Pipster proxy

AI-generated. Findings may contain errors. Those marked Verified have been manually reviewed.

Publishers can request a review.

Findings

Extension routes YouTube traffic through operator-controlled proxy server

On connect, the extension asks speedyext.ru (Russia) for a proxy address, then reconfigures your browser, unprompted, to route YouTube/Google Video traffic through it.

The operator sees every YouTube page, request, and cookie.

Severity
High unwanted
Type
Unexpected
CWE
CWE-200
Source
Dynamic sandbox
What actually happens
You did this

You install the extension and Chrome starts up.

The extension's allowConnectOnStartup setting is true by default, so no popup interaction is needed.

The extension did this

The extension automatically contacts speedyext.ru to get a proxy server address, then redirects all YouTube and Google Video traffic through that server.

This happens before you visit any website; the proxy is active from the moment the browser finishes loading.

Captured request
GEThttps://speedyext.ru/api/v2/connection/connect/a1f23d5f-e145-4ff4-a9e4-c95872717823

HTTP 200, {"status":200,"message":"Клиент подключен","data":{"ip":"77.232.131.238","port":3128,"configuration":null}}

The code that does this

PAC script builder, deobfuscated (background/background.js:4182-4185)

Readable version
static async buildPac(proxyServer) {  const timestamp = Date.now();  const domains = (await ConfigService.getCurrentConfig()).domains;  // domains list fetched from s3.twcstorage.ru — operator can add entries remotely  return `    // ${timestamp}    function FindProxyForURL(url, host) {        const blockedDomains = ["${domains.join('",')}"];         const isBlockedDomain = blockedDomains.some(domain =>            dnsDomainIs(host, domain)        );        if (isBlockedDomain) {            return "PROXY ${proxyServer.ip}:${proxyServer.port}";        }        return "DIRECT";    }  `;}
Data observable at the operator-controlled proxy
  • YouTube URLs visited
    https://www.youtube.com/watch?v=dQw4w9WgXcQ

    Every video page, search query, and playlist you access on YouTube passes through the proxy server.

  • Authentication cookies
    VISITOR_INFO1_LIVE=abc123; SID=xyz...

    YouTube login cookies travel through the proxy. Unencrypted traffic exposes credentials in transit; HTTPS still exposes headers and SNI.

  • Video request metadata
    https://r3---sn-a5mekn7s.googlevideo.com/videoplayback?id=...

    Requests to Google Video CDN (googlevideo.com) reveal which videos you are streaming.

  • Proxy server identity
    77.232.131.238:3128

    The proxy server address is assigned by the operator and can be changed at any time.

Servers involved
    • speedyext.ru

    Operator API, provides proxy server credentials. Russian-registered domain. Receives instance_id on every connect call.

    • s3.twcstorage.ru

    Russian cloud storage, hosts the config.json that controls which domains are proxied and which API server to use. Polled every 3 minutes.

    • 77.232.131.238

    Operator proxy server (observed live at port 3128). All YouTube and Google Video traffic is routed through this IP.

Scope caveat

HTTPS traffic is encrypted end-to-end between your browser and YouTube's servers. The proxy operator sees the destination hostname (via SNI) and the volume of traffic, but not the decrypted video content or HTTPS request bodies. The risk is highest for any residual HTTP requests, cookie headers on unencrypted channels, and the browsing pattern itself (which videos, when, how often).

Extension polls remote config every 3 minutes to update proxy targets

Every three minutes the extension downloads config from a Russian bucket setting which sites route through the proxy and which server it calls.

Both can change server-side, letting the operator redirect traffic unannounced.

Severity
Medium unwanted
Type
Unexpected
CWE
CWE-829
Source
Dynamic sandbox
What actually happens
You did this

Every three minutes, the extension's service worker checks whether the cached configuration has expired.

The check runs any time getCurrentConfig() is called, on startup, on proxy connect, and on every PAC script rebuild.

The extension did this

Downloads new config from a Russian storage bucket and applies it immediately, potentially changing which sites are proxied and which server gets the traffic.

No user notification or consent is required for these changes to take effect.

Captured request
GEThttps://s3.twcstorage.ru/f47bf14b-sprint-bucket/config/config.json

HTTP 200, {"apiDomain":"https://speedyext.ru","landingDomain":"https://sprint-ext.ru","domains":["youtube.com",".youtube.com","ytimg.com","googlevideo.com","ggpht.com","youtube-nocookie.com","youtu.be","youtubekids.com"]}

The code that does this

Config fetch and caching logic, deobfuscated (background/background.js:10443-10471)

Readable version
const CACHE_MINUTES = 3;class ConfigService {  static async getCurrentConfig() {    const cached = await Config.load();    if (cached.storedAt) {      const storedTime = dayjs(cached.storedAt);      if (dayjs().diff(storedTime, 'minutes') < CACHE_MINUTES) {        return cached; // use cache if under 3 minutes old      }    }    try {      const fresh = await fetchRemoteConfig(); // GET s3.twcstorage.ru/...config.json      await fresh.save();      return fresh;    } catch {      return cached; // fall back to stale cache on error    }  }}
Config fields that can be changed server-side
  • API server address
    https://speedyext.ru

    The server receiving extension registration, proxy credentials, and push tokens. The operator can redirect this to any domain.

  • Landing/uninstall domain
    https://sprint-ext.ru

    The domain used to build the uninstall notification URL, which includes your persistent device ID.

  • Proxied domain list
    youtube.com, .youtube.com, ytimg.com, googlevideo.com, ggpht.com, youtube-nocookie.com, youtu.be, youtubekids.com

    The domains whose traffic routes through the operator's proxy. The operator can expand this list anytime.

Remote config source
    • s3.twcstorage.ru

    Russian cloud object storage. Hosts the config.json file controlling proxy targets and API server. No authentication required to fetch; the URL is publicly readable.

    • speedyext.ru

    Current apiDomain from config, receives all extension API traffic. Operator can replace this with any domain via a config update.

Extension registers browser for operator push notifications via Firebase

Unprompted, the extension registers your browser with the operator's Firebase project, then sends the push token to speedyext.ru, an open channel for push notifications anytime, refreshed several times per session.

Severity
Medium unwanted
Type
Unexpected
CWE
CWE-200
Source
Dynamic sandbox
What actually happens
You did this

You install the extension and Chrome starts.

The allowNotifications setting defaults to true in chrome.storage without any notification permission prompt to the user.

The extension did this

Registers your browser with the operator's Firebase project and sends the push token to speedyext.ru, letting the operator push notifications anytime.

This fires automatically on startup and repeats multiple times per session to keep the token current.

Captured request
POSThttps://speedyext.ru/api/v2/notifications/set-fcm-token

HTTP 200

Body
{  "instance_id": "a1f23d5f-e145-4ff4-a9e4-c95872717823",  "token": "feQ81m9a4NT5UWLwG5EMmj:APA91bGS1CatZZvkVx5psx4x922tH75wq0TlE1YKu_jWPdOb1YK8thOvq0hzd8hdqexKbwo0L7wExlYSCwlRgfWawG76JT5yTndOy2K0MmTbo1spoB"}
The code that does this

FCM token registration, deobfuscated (background/background.js:11033-11041)

Readable version
async function sendFcmToken(instanceId, token) {  try {    // Posts FCM token to operator server so they can push to this device    await apiClient.post('/api/v2/notifications/set-fcm-token', {      instance_id: instanceId,      token: token    });  } catch (err) {    await errorLogger.addException('Failed to set notification token.', err);  }}
Data sent to speedyext.ru with the FCM token
  • Device identifier
    a1f23d5f-e145-4ff4-a9e4-c95872717823

    Your persistent installation ID links this push channel to your specific device record on the operator's server.

  • FCM push token
    feQ81m9a4NT5UWLwG5EMmj:APA91bGS1CatZZvkVx5psx4x922tH75wq0TlE1YKu_jWPdOb1YK8thOvq0hzd8hdqexKbwo0L7wExlYSCwlRgfWawG76JT5yTndOy2K0MmTbo1spoB

    A long-lived credential the operator uses to push notifications, valid until rotated or the extension is removed.

Services involved in push registration
    • firebaseinstallations.googleapis.com

    Google Firebase Installations API, issues the Firebase Installation ID used as the FCM messaging sender identity for project sprint-72dda.

    • fcmregistrations.googleapis.com

    Google Firebase Cloud Messaging registration endpoint, issues the FCM push token that the extension sends to the operator.

    • speedyext.ru

    Operator API, receives the FCM token paired with the device instance_id, enabling the operator to send push notifications to any registered browser.

+1 more finding not shown

What it can do

Permissions this extension asks for, as declared in version 2.0.7. Asking for a permission is not a finding on its own - it is what the extension can do if it chooses to.

  • Read and change your data on youtube.com

    https://*.youtube.com/*

  • Read and change your data on ytimg.com

    https://*.ytimg.com/*

  • Read and change your data on googlevideo.com

    https://*.googlevideo.com/*

  • Read and change your data on ggpht.com

    https://*.ggpht.com/*

  • Read and change your data on youtube-nocookie.com

    https://*.youtube-nocookie.com/*

  • Read and change your data on youtubekids.com

    https://*.youtubekids.com/*

  • Read and change your data on sprint-ext.ru

    https://*.sprint-ext.ru/*

  • Read and change your data on speedyext.ru

    https://*.speedyext.ru/*

  • Read and change your data on youtu.be

    https://*.youtu.be/*

  • Read and change your data on s3.twcstorage.ru

    https://s3.twcstorage.ru/*

  • Store data in your browser

    storage

  • Route all of your browsing through a server of its choosing

    proxy

  • See the address and title of every tab you have open

    tabs

  • See every page you navigate to, as you navigate to it

    webNavigation

  • Show you desktop notifications

    notifications

Where it sends data

Destinations our analysis observed Sprint.YouTube contacting. Sending data somewhere is not a finding on its own - an extension that syncs your settings has to talk to its own server - but it is where your data can go, and who else it goes to.

  • speedyext.ru

    Sprint.YouTube sends data to speedyext.ru. One other extension we have analysed sends data here.

  • s3.twcstorage.ru

    Sprint.YouTube sends data to s3.twcstorage.ru. No other extension we have analysed sends data here.

  • Firebase (sprint-72dda)

    Sprint.YouTube sends data to Firebase (sprint-72dda). Named as a recipient in this extension's own analysis.

Updated 30 September 2026mejijppakgjlcfdadhekkjafodbnamhc