Rehber · 16 Eylül 2026

Birlikte izleme uzantısı kurmak güvenli mi?

Chrome, uzantının "ziyaret ettiğiniz sitelerdeki tüm verileri okuyup değiştirebileceğini" söylüyor ve bu uyarı bir formalite değil. O iznin ne işe yaradığı, böyle bir uzantıya sorulması gereken beş soru ve beşinin de bizdeki cevabı.

Kısa cevap

Birlikte izleme uzantısı her siteye erişim ister, çünkü açtığın hangi sayfa olursa olsun oradaki video öğesini bulmak zorundadır; aynı izin kötü niyetli bir uzantının giriş bilgilerini okumak için kullanacağı izindir. Böyle bir uzantıyı beş şeye bakarak değerlendir: her izni neden istediği, videonun sunucusundan geçip geçmediği, neyi sakladığı, analitik kodu yükleyip yüklemediği ve kimin işlettiği. Bizde gezinme geçmişi, izleme geçmişi ve sohbet metni tutulmuyor.

Video senkronlayan bir uzantı kurmak, "ziyaret ettiğiniz sitelerdeki tüm verileri okuyabilir ve değiştirebilir" diyen bir uyarıyı geçmek demek. O uyarı doğru ve insanı bir an durdurması yerinde. Bu izne sahip bir uzantı, bankana giriş yaptığın bir sayfada teknik olarak o sayfayı okuyabilecek konumdadır.

Yani "güvenli mi" sorusunun dürüst cevabı evet ya da hayır değil. Şu: iznin ne için istendiği, birine bu izni vermeden önce neye bakman gerektiği ve bizim cevaplarımız.

Böyle bir uzantı neden bütün sitelere erişim istiyor

Uzantının işi, izlediğin sayfadaki <video> öğesini bulmak, konumunu okumak ve ondan oynatmasını ya da duraklamasını istemek. Bunun için sayfanın kendi içinde küçük bir betiğin çalışması gerekiyor.

Hangi sayfada? Bunu kimse önceden bilmiyor. Bu akşam YouTube'da, yarın bir ders platformunda, ertesi gün bir haber sitesinin belgeselinde izliyor olabilirsin. Erişim istenecek bir site listesi yok — bir servisle bütünleşmek yerine sayfanın kendi oynatıcısına bağlanmanın bütün mesele olduğu yer burası ve kimsenin entegrasyon yazmadığı siteleri de kapsamasının sebebi bu.

Betik ayrıca her çerçevede çalışıyor, çünkü oynatıcılar çoğu zaman bir iframe'in içinde oluyor; bir de gömülü ve kurumsal oynatıcıların sıkça kullandığı shadow DOM'un içine bakıyor.

Yani geniş izin tek başına kırmızı bayrak değil. Asıl soru o izinle ne yapıldığı.

Sorulması gereken beş soru

Bunları her birlikte izleme uzantısına sor; bu yazının anlattığına da.

1. Video onların sunucusundan geçiyor mu? Geçiyorsa akışını onlar taşıyor ve akşamın onların bant genişliğine bağlı. Geçmiyorsa uzantı yalnızca konum ve oynatma durumu hakkında küçük mesajlar alıp veriyor demektir.

2. Hangi izinleri istiyor ve her biri açıklanmış mı? Bu iş için "tüm siteler" beklenen bir izin. Gezinme geçmişine, yer imlerine ya da indirmelerine erişim değil.

3. Ne saklanıyor ve nerede? Hangi videoyu izlediğinin kaydını tutan bir şeyle, yalnız odanın ne zaman açık kaldığını ve içinde kimlerin olduğunu not edip ne oynadığını hiç yazmayan bir şey arasında gerçek bir fark var.

4. Analitik ya da reklam kodu yüklüyor mu? Ziyaret ettiğin her sayfada çalışan bir uzantı, bir izleyici yerleştirmek için alışılmadık ölçüde güçlü bir yer.

5. Kim işletiyor ve ulaşılabiliyor mu? Adı belli bir işletici, bir iletişim adresi ve kodla örtüşen bir gizlilik politikası, isimsiz bir mağaza kaydından başka bir şeydir.

Bizim cevaplarımız

Video hiçbir zaman sunucumuzdan geçmiyor. Herkes kendi tarayıcısında, kendi hesabıyla orijinali oynatıyor. Hattan geçen şey küçük bir JSON mesajı: saniyede bir konum ve oynatma durumu, biri bir şey yaptığında oynat/duraklat/atla komutu, sohbet metni, bir de ana kullanıcının sayfa adresi ve başlığı — yalnız ana kullanıcıdan, oda "Videoyu aç" diyebilsin diye.

Bütün izinler ve ne için kullanılmadıkları:

İzinNeden gerekliNe için kullanılmıyor
Tüm siteler + içerik betiğiVideoyu bulmak, konumunu ve reklam durumunu okumak, senkron tuşunu ve sohbet balonunu videonun üstüne çizmekSayfa içeriğini, formları, çerezleri ya da parolaları okumak. Video öğesi olmayan bir sayfada betik bekler ve hiçbir şey göndermez
tabsVideonun hangi sekmede olduğunu bilmek; ana kullanıcının sayfa adresini ve başlığını odayla paylaşmakBaşka sekmelerin içeriğini okumak — yalnız adres ve başlık, yalnız odadaki sekme için
storageTercihlerini ve oturum verini cihazında tutmakUzantının dışına bir şey göndermek
sidePanelArayüz Chrome'un yan panelinde açılıyor—
scriptingUzantı kurulduğunda ya da güncellendiğinde zaten açık olan sekmelere içerik betiğini yerleştirmek—
alarmsDakikada bir çalan bir alarm, Manifest V3 servis çalışanı uyumasın ve bağlantı açık kalsın diye—
notificationsPanel kapalıyken gelen sohbet mesajını göstermekBaşka hiçbir bildirim türü

Hiç toplanmayanlar: gezinme geçmişi ya da ziyaret ettiğin sitelerin listesi; video içeriği, izleme geçmişin ya da hangi videoyu izlediğinin kaydı; sohbet mesajlarının metni — iletilir ve biter; bir odada hangi sayfanın, başlığın ya da videonun açık olduğu; ad soyad, telefon, adres, kimlik; kart bilgileri; analitik, reklam ya da izleme verisi; konum.

Hiçbir yerde analitik yok. Ne uzantıda ne bu sitede analitik, reklam ya da izleme SDK'sı var. Sitenin yazı tipleri sitenin kendisinden geliyor; bunu okurken Google Fonts'a istek gitmiyor.

Çerez de yok. Sitede giriş yaptığında oturum anahtarı tarayıcının localStorage alanında duruyor — bu bir çerez değil, kendiliğinden gönderilmiyor ve çıkış yaptığında siliniyor.

Var olan şeyler, açıkça

Hesap katmanı bazı verilerin saklanması demek; bunu saklamak, saklanan verinin kendisinden daha kötü olurdu:

  • Hesabın: e-posta adresi, parolanın argon2id özeti (parolanın kendisi hiç tutulmuyor), görünen ad, dil, abonelik durumu ve muhasebenin gerektirdiği ödeme kayıtları. Kart numaraları bize hiç ulaşmıyor; ödeme sağlayıcının kendi sayfasında alınıyor.
  • Güvenlik kayıtları: bir şey ters göründüğünde hepsini düşürebilesin diye açık oturumlar ve IP adresinin kendisini değil özetini tutan bir denetim günlüğü.
  • Oda oturumu kayıtları: oda kapandığında onunla ilgili tek bir kayıt — oda kimindi, ne zaman açılıp kapandı, içinde en az iki kişi ne kadar birlikte kaldı, aynı anda en çok kaç kişi vardı ve katılanların hesap kimlikleri. Oda kodu, sayfa, video ya da sohbet yok. Hizmeti işletmek, kapasiteyi planlamak, kötüye kullanımı fark etmek ve ürün kararlarını gerçek kullanıma dayandırmak için kullanılıyor; 400 gün saklanıyor ve hesabını silince bu kayıtlardan çıkarılıyorsun.
  • Sunucu yöneticisi şu anda hangi odaların açık olduğunu, her birinde kaç kişi bulunduğunu ve içlerindeki e-posta adreslerini görebiliyor — arızaları izlemek ve kötüye kullanım bildirimlerine karşılık vermek için. O ekran belleği okuyor, oda kapanınca yaşamıyor, oda kodlarını maskeliyor ve izlenen sayfayı içermiyor. Kimin ne izlediğini yönetici de görmüyor.

Sohbet hiç saklanmıyor; odanın içeriği — sayfa, oynatma durumu, bağlantılar — son kişi çıkınca bellekten siliniyor. Geriye yalnız yukarıdaki kısa oturum kaydı kalıyor.

Cihazında duranlar

Chrome'un uzantı deposunda, hiçbir yere gönderilmeden: görünen ad, son oda kodu, otomatik bağlanma tercihi, dil ve tema kalıcı duruyor; sohbet mesajları (son 200) ve videonun bulunduğu sekmenin kimliği, adresi, başlığı ise yalnız tarayıcıyı kapatana kadar. Uzantıyı kaldırınca hepsi siliniyor.

Güncellemeler üzerine bir not

Tarayıcı uzantılarında gerçekçi risk çoğu zaman kurduğun sürüm değil — uzantı el değiştirdikten sonraki güncelleme; işe yarayan bir aracın bir gecede reklam enjektörüne dönüştüğü an. İki alışkanlık yardımcı oluyor ve ikisi de kimsenin senin adına verebileceği bir söz değil: kurmadan önce uzantıyı kimin yayımladığına bak, sahibini tespit edemediğin uzantılara mesafeli dur.

Bizimkini projenin sahibi işletiyor, aktarıcı relay.iwatchuwatch.com adresindeki tek bir sunucu ve değiştirilecek bir adres ayarı yok; gizlilik politikası bölüm bölüm kodun karşısına yazıldı — izinler manifest'ten, mesaj alanları protokolden, depo anahtarları kaynaktan. Kod değişirse metin de değişiyor.

Kısa hâli

Böyle bir uzantının istediği izin geniş, çünkü iş geniş. Asıl soru sonrasında ne olduğu: videonun bir yere gidip gitmediği, bir şeyin yazıya geçip geçmediği ve işletenlerin bulunup bulunamadığı. İndir · Gizlilik politikası · Bütün sorular, açıkça

Okumak yerine denemek de olur.