Bu dosyaların işlevleri nedir?
Yüklediğiniz dosyalar,
"iyidoy" adında, özellikle
Yemeksepeti platformu üzerinde çalışan gelişmiş bir Chrome eklentisine (extension) aittir.
Bu eklentinin genel amacı; Yemeksepeti web sitesini manipüle etmek, kullanıcı oturumlarını yönetmek, adres ekleme/silme işlemlerini otomatize etmek ve tarayıcıyı bir
Android mobil uygulamasıymış gibi göstererek API istekleri yapmaktır.
İşte her bir dosyanın detaylı işlevi:
1. temel yapılandırma
- manifest. JSON:
- Eklentinin kimlik kartıdır.
- Eklentinin adını, versiyonunu ve yetkilerini (cookie okuma, ağ isteklerini değiştirme, depolama vb.) Tanımlar.
- Bu eklentinin sadece yemeksepeti.com ve onun API servisi fd-api.com üzerinde çalışacağını belirtir.
2. arayüz (UI) dosyaları
- popup.html:
- Eklenti ikonuna tıkladığınızda açılan küçük pencerenin tasarı mıdır?
- İçerisinde "giriş yap", "çıkış yap", hata mesajları, yükleniyor ekranı ve başarı mesajları gibi görsel öğeler bulunur.
- popup.js:
- popup.html dosyasının beynidir (kodları karartılmış/obfuscated durumda).
- Kullanıcı girişini yönetir.
- Harita işlemleri yapar (Google maps API kullanarak konum seçme).
- Adresleri listeler, ekler, düzenler ve siler.
- Adresleri JSON formatında içe/dışa aktarır (Import/Export).
- Arka planda çalışan servislerle (background.js) iletişim kurar.
3. arka plan ve ağ işlemleri (backend Logic)
- background.js:
- Eklentinin görünmeyen kıs mıdır ve tarayıcı kapalıyken bile arka planda çalışabilir.
- header spoofing: tarayıcıdan giden isteklerin başlıklarını (headers) değiştirerek isteğin bir bilgisayardan değil, Android telefon uygulamasından geliyormuş gibi görünmesini sağlar (user-agent, platform: Android vb.).
- proxy ve imza: ağ isteklerini yakalar ve rsig.js dosyasını kullanarak bu istekleri şifreli bir imza (signature) ile mühürler. Bu, Yemeksepeti'nin güvenlik duvarlarını aşmak için gereklidir.
- Diğer eklentilerle çakışma olup olmadığını kontrol eder.
- fallbackdynamicrules. JSON:
- background.js'in ağ isteklerini değiştirirken (örneğin cihazı Android gibi göstermek için) kullandığı yedek kurallar listesidir. Eğer sunucudan güncel kurallar çekilemezse bu dosya devreye girer.
4. sayfa içi manipülasyon (ınjection)
- content_script.js:
- Yemeksepeti web sayfasına doğrudan müdahale eden koddur.
- Sayfaya inject.js gibi diğer scriptleri enjekte eder.
- Kullanıcının tarayıcı verilerini (cookie, localstorage, ındexeddb) tamamen temizleyerek "yeni bir cihazmış" gibi davranılmasını sağlar.
- Otomatik adres ekleme işlemleri sırasında ekranda "işlem devam ediyor" gibi uyarılar gösterir (overlay).
- inject.js:
- Bu dosya, web sayfasının çekirdeğine sızar.
- Xmlhttprequest ve fetch fonksiyonlarını yeniden yazar (override eder). Bu sayede site üzerinden yapılan her veri alışverişini yakalar, değiştirir veya engeller.
- Özellikle takip (tracker) yazılımlarını (sentry, perseus, hotjar vb.) Engeller.
5. kriptografi ve güvenlik
- rsig.js:
- "Request signature" (istek imzası) anlamına gelir.
- Yemeksepeti API'sine gönderilen isteklerin geçerli sayılması için gereken özel şifreleme anahtarlarını ve algoritmalarını içerir. İsteklerin güvenli ve orijinal uygulamadan geliyormuş gibi görünmesini sağlayan matematiksel imzayı üretir.
- crypto-js.min.js:
- Şifreleme işlemleri (MD5, SHA256, AES vb.) Yapmak için kullanılan standart bir hazır kütüphanedir? rsig.js ve background.js bu kütüphaneyi kullanır.
özetle bu eklenti ne yapıyor?
Bu eklenti, tarayıcınızı
Yemeksepeti Android uygulaması gibi taklit eder. Bunu yaparak:
- Web sitesinde normalde olmayan veya kısıtlı olan bazı özellikleri kullanabilir.
- Çoklu hesap yönetimi veya kupon kullanımı gibi senaryolar için tarayıcı izlerini (çerezler, cihaz kimliği) sürekli temizleyip sahte verilerle değiştirir.
- Adres ekleme/silme işlemlerini toplu ve hızlı bir şekilde yapar.
Yani bunlar virüslü müdür?
Bu dosyaları incelediğimizde, teknik olarak bilgisayarını çökertecek veya dosyalarını silecek klasik bir "bilgisayar virüsü" (Worm/Trojan) olmadığını söyleyebiliriz. Ancak,
güvenlik açısından son derece riskli ve "kötü amaçlı yazılım" (Malware/Spyware) kategorisine girebilecek özellikler taşıyor.
Neden güvenli olmadığını ve neden
kullanmamanız gerektiğini maddeler halinde açıklayayım:
1. kodlar kasıtlı olarak gizlenmiş (obfuscation)
Paylaştığınız inject.js, popup.js, rsig.js ve background.js dosyalarının içeriği
okunamaz hale getirilmiş (obfuscated).
- normalde: şeffaf ve güvenilir eklentiler kodlarını açık bırakır.
- burada: geliştirici, kodun ne yaptığını görmenizi istemiyor. Bu genellikle kötü niyetli bir davranışın (veri çalma, arka planda gizli işlem yapma vb.) En büyük işaretidir.
2. verileriniz 3. taraf bir sunucuya gidiyor
background.js ve popup.js dosyalarında yapılan analizde, eklentinin
apikupon.com adlı dış bir sunucuyla sürekli iletişim halinde olduğu görülüyor.
- risk: Yemeksepeti oturum bilgileriniz (token), adres bilgileriniz ve muhtemelen kişisel verileriniz bu sunucuya gönderiliyor. Bu verilerin orada ne amaçla kullanıldığını veya saklandığını bilemezsiniz. Hesabınızın çalınma riski çok yüksektir.
3. tarayıcıyı manipüle ediyor (man-in-the-middle)
inject.js dosyası, tarayıcınızın internete çıkış kapısı olan fetch ve xmlhttprequest fonksiyonlarını
ele geçiriyor.
- risk: Yemeksepeti sitesinde tıkladığınız her şeyi, girdiğiniz şifreleri veya kredi kartı bilgilerini (eğer sayfa içinde işleniyorsa) bu eklenti, siteye gitmeden önce yakalayabilir, değiştirebilir veya kopyalayabilir.
4. takip (tracker) engelleyici arkasına saklanıyor
Eklenti, Yemeksepeti'nin güvenlik ve analiz araçlarını (sentry, perseus vb.) Engellemeye çalışıyor.
- sebep: bu, Yemeksepeti'nin "bu kullanıcı hile yapıyor" veya "bu bir bot" demesini engellemek içindir. Ancak bu durum, hesabınızın Yemeksepeti tarafından tespit edildiğinde kalıcı olarak yasaklanmasına (banlanmasına) neden olabilir?
5. yüksek izinler istiyor
Manifest. JSON dosyasında < all_urls> ve cookies gibi çok geniş yetkiler istenmiş.
- risk: bu eklenti teknik olarak sadece Yemeksepeti'nde değil, tarayıcınızdaki diğer aktiviteleri de izleme potansiyeline sahip (kodun gizlenmiş olması nedeniyle tam kapsamı belirsiz).
özet karar
Bu yazılım
virüs değildir (bilgisayarınızı bozmaz), ancak
casus yazılım (spyware) davranışları sergilemektedir.
tavsiye:
- Bu dosyaları veya eklentiyi asla tarayıcınıza yüklemeyin.
- Eğer yüklediyseniz derhal kaldırın.
- Eğer bu eklentiyi kullanırken Yemeksepeti hesabınıza giriş yaptıysanız, şifrenizi hemen değiştirin ve kayıtlı kredi kartı bilgilerinizi kontrol edin.