Chrome ve Firefox mağazalarında yayımlanan “Twitch Enhanced Viewer | JeetBot” adlı tarayıcı eklentisinin, yaklaşık 31 bin kullanıcının Twitch OAuth oturum belirteçlerini operatörün kontrol ettiği proxy altyapısına aktardığı ortaya çıktı. Socket güvenlik araştırmacısı Kush Pandya, eklentinin video oynatma isteğini proxy üzerinden geçirirken token’ı URL içinde açık metin olarak ilettiğini ve bunun hesabı taşıyıcı kimlik bilgisine dönüştürdüğünü bildirdi.
Eklentinin Chrome Web Store tarafında 30 bin kullanıcıya, Firefox Add-Ons tarafında ise 604 kullanıcıya ulaştığı görülüyor. Chrome sürümü 26 Haziran 2025’te, Firefox sürümü 7 Temmuz 2025’te yayımlandı. Her iki paket de haberin yazıldığı sırada indirilebiliyordu. Geliştirici olarak HISHIMIRO/jeetbot.cc adı listeleniyor; Firefox paketinde ise twitchenhancedviewer@example.com kimliği yer alıyor.
JeetBot’un mağaza açıklamasında, “yayıncılar ve izleyiciler için kalite, kolaylık ve kontrol” sunduğu ve “bölgesel kısıtlamaları olan alanlar için 1080p yayın” sağladığı yazıyor. Eklenti, Twitch, Kick ve VK Live için “güçlü bot” olarak tanıtılıyor; mesaj konuşma sentezi, otomatik çeviri ve izleyici etkileşimini artırmaya dönük başka özellikler sunduğunu iddia ediyor. Site alt bilgisinde operatörün Kıbrıs merkezli geliştirici Aleksandr Popov olduğu belirtiliyor. Popov’un LinkedIn profilinde JeetBot’u kişisel proje olarak tanımladığı da yer alıyor.
Token, oynatma isteğiyle birlikte proxy’ye gidiyordu
Socket’ten Kush Pandya’nın incelemesine göre v85.x sürümleri, Twitch OAuth belirtecini ağ katmanındaki yönlendirme sırasında &auth= sorgu parametresiyle operatörün proxy’sine iletiyordu. Bu aktarım, kullanıcının izlediği her kanal için tekrarlanıyordu. Kodda sabitlenmiş on Rus yayıncı kanalının ise bu yönlendirmeden muaf tutulduğu belirlendi.
Proxy altyapısı, kullanıcının Twitch video oynatma listesi isteğini “usher.ttvnw[.]net” alanına yönlendiriyor ve buna OAuth token’ını ekliyordu. Token, Twitch sohbetine erişim, whispers olarak bilinen özel mesajlar, hesap ayarları ve kanal içi etkileşimler için kullanılabiliyor. URL sorgu dizgesine yazıldığı için değer, proxy sunucusunun günlüklerine de açık metin olarak düşüyordu.
Muaf tutulan on kanalın pch3lk1n, fasoollka, flamie, dosia, fander, almazer, forzorezor, akyuliych, lagoda1337 ve lagoda olduğu aktarıldı. Bu hesapların çoğu Rusça yayın yapan ve yüz binlerce takipçisi bulunan kanallar olarak sıralandı: pch3lk1n’in 580 bin, fasoollka’nın 361 bin, flamie’nin 132 bin, dosia’nın 29, fander’in 2, almazer’in 4, forzorezor’un 177 bin, akyuliych’in 1,1 milyon, lagoda1337’nin 225 bin ve lagoda’nın 77,3 bin takipçisi var. Pandya, bu listenin dışındaki her kanal için canlı oturum belirtecinin proxy’ye iletildiğini söyledi.
İncelemede, eski v4.x sürümlerinde mekanizmanın daha da ileri gittiği kaydedildi. Örneğin 4.8 sürümünde, Ocak 2026 tarihli bir yapıda token’ın operatör hostundaki ayrı bir set-token uç noktasına POST edildiği; yedek akışların ise deno.dev ve deno.net üzerinde bulunduğu aktarıldı. Araştırmacılar, bunun tek bir istemci davranışı değil, birkaç sürüm boyunca sürdürülen bir tasarım olduğunu belirtti.
Popov, benzer token yönlendirme yaklaşımının ReYohoho Twitch Proxy, XT Viewer ve ggsel Ханти gibi başka Twitch oynatma eklentilerinde de kullanıldığını söyledi. Ancak bu araçların Chrome Web Store açıklamalarında OAuth’un sunucuya iletildiğini açıkça yazdığı, Rus kullanıcılar için “1080p/1440p kalite erişimi” sunduklarını belirttikleri aktarıldı. Popov, kendi incelemelerinde bu eklentilerin de token’ları URL sorgu parametreleri içinde taşıdığını gördüklerini, buna rağmen veri işleme biçimini doğru açıklama sorumluluğunun ortadan kalkmadığını vurguladı.
JeetBot, önceki sürümlerde kullanıcı OAuth belirtecini proxy’lere göndererek yayın listelerini çektiğini de kabul ediyor. Eklenti belgelerinde, “önceki uygulamada uzantı Twitch OAuth token’ını yayın oynatma listelerini almak için proxy sunucularımıza gönderiyordu” ifadesi yer alıyor. Aynı notta, bunun bir kimlik doğrulama bilgisi olduğu ve korunması gerektiği de belirtiliyor.
Güncelleme geldi, eski token’lar yerinde kaldı
Yayımlanan teknik notta, Firefox eklentisinin 85.8.7 sürümünün sorunu düzelttiği, Chrome için karşılığının ise incelemede olduğu belirtildi. Güncellemede, Twitch OAuth belirtecinin artık proxy sunucularına gönderilmediği ifade ediliyor. Dokümana göre eski sürümler, kullanıcı güncellenene kadar token iletmeyi sürdürüyor.
Belgeler ayrıca eklenti erişilebilir değilse token akışını durdurmak için geçici olarak devre dışı bırakılmasını öneriyor. Ancak geliştirici, daha önce iletilmiş belirteçlerin bu işlemle geri alınmayacağını açıkça not ediyor. Bu nedenle güncelleme, yeni sızıntıyı kesiyor; geçmişte gönderilen oturum bilgilerini iptal etmiyor.
Popov, token’ların dışa aktarılmasının bir gözden kaçırma olduğunu ve son sürümde giderildiğini söyledi. Chrome güncellemesinin de mağaza incelemesini beklediğini aktardı. Geliştirici, önceki açıklama ve gizlilik politikasının Twitch OAuth token’larının proxy sunucularına taşındığını yeterince anlatmadığını kabul etti ve bunu kendi hatası olarak niteledi. Socket’in konuya işaret etmesini memnuniyetle karşıladıklarını da söyledi.
Popov’a göre on kanal için yönlendirme yapılmamasının nedeni, Rusya dışından ya da VPN üzerinden izlerken görülen oynatma sorununu aşmak için eklenmiş geçici bir çözüm. Twitch oynatıcısının bu durumda “A proxy or unblocker has been detected. This premium content will not be available to you while it is in use. (Error #3)” uyarısını verdiği belirtildi. 85.8.4 sürümünden itibaren “Channels with restrictions” ayarı üzerinden listenin değiştirilebildiği, yani bu istisnanın kullanıcı tarafından düzenlenebilir olduğu ifade edildi.
Operatör, önceki token aktarımını Twitch oynatma listelerini çekmek ve yayın akışını desteklemek için kullandığını savundu. Eklentinin, reklam göstermeyen bir deneyim ve bölge kilidi açılmış içerik sağladığını iddia ettiği de kayıtlara geçti. Popov, aktarılan token’ların herhangi bir izinsiz hesap etkinliği için kullanılmadığını ileri sürdü ve hedefin oynatma işlevi olduğunu vurguladı.
Socket ise Chrome ve Firefox genelinde yaklaşık 31 bin kullanıcının canlı Twitch OAuth oturum belirteçlerinin operatör kontrolündeki proxy altyapısı üzerinden aktarıldığını açıkladı. Şirkete göre bu belirteçler taşıyıcı kimlik bilgisi niteliğinde; ele geçiren kişi parola veya ikinci faktör olmadan hesaba erişim sağlayabiliyor, whispers okuyup gönderebiliyor, sohbette mesaj yazabiliyor ve kanal puanı harcayabiliyor. Araştırmacılar, bu aktarımın hem mağaza açıklamalarında hem de gizlilik notlarında açıkça belirtilmediğini kaydetti.
JeetBot belgelerinde, Chrome için bir güncellemenin mağaza incelemesine sunulduğu ve Firefox tarafında 85.8.7 sürümünün sorunu giderdiği tekrar hatırlatılıyor. Eski kurulumların, kullanıcı güncelleyene kadar belirteç iletmeyi sürdüreceği de not düşülüyor. Bu nedenle belgenin önerdiği geçici devre dışı bırakma adımı, yalnızca ileriye dönük akışı kesiyor; daha önce gönderilmiş token’ları geri çekmiyor.
Popov’un açıklamasına göre 10 kanalı ayrı tutan mekanizma, izleyicilerin Rusya dışından veya VPN üzerinden erişmeye çalışırken gördüğü hata mesajına karşı geliştirilmiş bir oynatma yolu olarak tasarlandı. Bu yolun kullanıcı ayarından değiştirilebildiği, kanal listesine sonradan ekleme ve çıkarma yapılabildiği belirtildi. Araştırmacılar, muafiyetin sabit bir istisna değil, 85.8.4’ten itibaren düzenlenebilir bir oynatma ayarı olduğunu aktardı.
Toplanan teknik notlar, mağaza kayıtları ve geliştirici açıklamaları birlikte okunduğunda, JeetBot’un Twitch oturum belirtecini oynatma listesi alma sürecinde proxy’ye ilettiği, 85.8.7 ile bu davranışı değiştirdiği ve Chrome güncellemesini inceleme aşamasında beklettiği görülüyor. Eklenti açıklamalarında yer alan veri işleme ayrıntıları ile güvenlik araştırmacılarının bulguları arasındaki fark da böylece açıkça kayıt altına alınmış oluyor.
