Bloga dön
·10 dk okuma·productdevbook

Bir Mac Uygulaması Ağ Üzerinden Sizi Gözetliyor mu Nasıl Anlarsınız

Olması gerekenden çok ev arayan Mac uygulamalarını yakalamak için sağduyulu bir rehber — ve gürültüyü gerçek gözetimden ayıran sinyaller.

  • Privacy
  • Security
  • macOS
  • Network monitoring

Bir ekran kayıt uygulaması yüklersiniz, istediği izinleri verirsiniz ve bir hafta sonra her gece saat 03'te birkaç yüz kilobayt aktardığını fark edersiniz. Sizi gözetliyor mu? Muhtemelen değil. Kabul etmediğiniz bir şey mi yapıyor? Muhtemelen. Bir mac uygulamasının ağda casusluk yapıp yapmadığı sorusunun gerçek bir cevabı vardır ve bu "evet" veya "hayır" değildir — "gerçekte makineden ne ayrılıyor, nereye gidiyor ve bu uygulamanın yapacağını söylediğiyle eşleşiyor mu?"dur.

Bu paranoyak bir yazı değil, teknik bir yazıdır. Çoğu uygulama iyidir. Birkaç uygulama gürültülüdür. Çok az sayıda uygulama yapmaması gereken şeyleri yapar. Amaç, hisler yerine kanıtlarla onları ayırt etmektir.

Telemetri vs gözetim — aynı şey değiller

Sıklıkla birbirine karıştırılan iki çok farklı şey:

  • Telemetri. Uygulama anonim-vari kullanım verilerini bildirir: özellik sayıları, çökme günlükleri, yükleme bilgisi, bazen kaba demografi. Genellikle gizlilik politikasında açıklanır. Genellikle vazgeçilebilir. Sinir bozucu olduğunda bile genellikle kötü niyetli değildir.
  • Gözetim. Uygulama içerik sızdırır — yazdıklarınız, açtığınız dosyalar, ekranınızda olanlar, kişileriniz, kamera girişiniz — bir sunucuya, açıklama olmadan veya kasıtlı olarak belirsiz açıklamayla. Bu, ana akım Mac App Store uygulamalarında nadirdir ancak özellikle belirsiz para kazanma yöntemleri olan ücretsiz uygulamalarda olur.

Bir bant genişliği izleyicisi size ağ etkinliğinin hacmini ve zamanlamasını gösterebilir. Bir şifrelenmiş bağlantının içeriğini söyleyemez. Açıklanan davranış ile gözlemlenen davranış arasındaki uyumsuzluk genellikle ağda casusluk yapan bir mac uygulaması işaretlemeye yeterlidir — veya daha sıklıkla şüpheli görünenin aslında sıradan olduğunu doğrulamak için.

Ağda casusluk yapan bir mac uygulamasının işaretleri

Yakından bakmayı hak eden desenler şunlardır.

Mesai dışı yüklemeler

Hiçbir kullanıcı eyleminin tetikleyemeyeceği saat 03'te uyurken veri yükleyen bir uygulama bir soruyu hak eder. Bazı meşru nedenler var (analitik toplulaştırma, hata günlüğü yüklemeleri, içerik senkronizasyonu), ancak kayıt işlevi kullanılmıyorken saat 03'te 80 MB yükleyen bir ekran kaydedici en azından sormaya değer.

Kalıcı yeniden bağlantılar

Uzun ömürlü bir bağlantıyı tutan veya birkaç saniyede bir yeniden bağlanan bir uygulama canlı iletişim yapıyor. Sohbet uygulamaları ve işbirliği araçları (Slack, Discord, Figma) buna ihtiyaç duyar. Bir PDF okuyucu duymaz.

Sürekli yavaş yüklemeler

Sürekli 5-20 KB/sn'lik bir damlama, akış telemetrisinin parmak izidir. Bunun tuş vuruşları, ekran çerçeveleri veya sadece analitik olayları olup olmadığı uygulamaya bağlıdır. Arkasında ne olduğunu bilmeye değer.

Birçok farklı ana bilgisayara bağlantılar

Çoğu meşru uygulama az sayıda arka uçla konuşur — kendi sunucuları, belki bir analitik sağlayıcı, belki bir CDN. 30 farklı ana bilgisayarla konuşan bir uygulama, ya çok sayıda üçüncü taraf SDK kullanıyor (reklam destekli uygulamalar için tipik) ya da daha ilginç bir şey yapıyor.

Bilinmeyen IP aralıklarına şifrelenmiş hedefler

Neredeyse tüm modern uygulamalar HTTPS kullanır, bu yüzden şifrelemenin kendisi şüpheli değildir. İlginç olan hangi ana bilgisayarlardır. Kendi alan artı bir Cloudflare CDN'i artı bir Apple analitik uç noktasıyla konuşan bir uygulama normaldir. Geliştiricinin ülkesiyle alakasız bir ülkedeki çıplak bir IP adresiyle konuşan bir uygulama en azından meraklıdır.

Gerçekte ne görebilirsiniz ve ne göremezsiniz

macOS'ta uygulama başına bir bant genişliği izleyicisi size şunları verir:

  • Süreç adı (ve doğru atfedildiklerinde yardımcı süreçler).
  • Zaman içinde gönderilen ve alınan baytlar.
  • Geçmişle birlikte canlı oran.
  • Genellikle bağlantı sayıları.

Size vermez:

  • Şifrelenmiş bağlantıların içeriği.
  • Ek araçlar olmadan hedef alan adı veya IP.
  • Uygulamanın mikrofonunuzu, ekranınızı veya tuş vuruşlarınızı okuyup okumadığı.

Hedef tarafı için, lsof -i -n -P süreç başına şu anda açık olan bağlantıları gösterir. Alan adı çözümlemesi için, bunu bir DNS günlüğü veya Little Snitch gibi bir araçla eşleştirebilirsiniz. İçerik için, yüklü kök sertifikalarla bir ortadaki adam proxy'sine ihtiyacınız olur, ki bu çoğu insanın istediğinden daha invaziv bir kurulumdur.

Çoğu kullanıcı için gerçekçi yığın:

  1. Ne zaman ve ne kadar için bir menü çubuğu bant genişliği izleyicisi.
  2. Uygulamanın neye erişebileceği için macOS'un gizlilik izinleri panelleri.
  3. Kiminle konuştuğu için ara sıra lsof.

Bu, önemli olan hemen hemen her şeyi yakalamaya yeterli.

Pratik bir araştırma rutini

Bir uygulamanın davranışı sizi şüphelendiriyorsa:

1. Bir taban çizgisi alın

Uygulamayı bir hafta müdahale etmeden izleyin. Normal yükleme deseni nedir? Ne zaman veri aktarır? Günde ne kadar? Bir taban çizgisi olmadan, her artış şüpheli görünür. Biriyle, yalnızca gerçek anomaliler öne çıkar.

2. Gizlilik izinlerini kontrol edin

Sistem Ayarları → Gizlilik ve Güvenlik. Şunlara bakın:

  • Full Disk Access (çok güçlü — çoğu uygulamanın buna ihtiyacı yoktur).
  • Screen Recording.
  • Accessibility.
  • Camera, Microphone.
  • Files and Folders.

Çapraz referans: Bu uygulamanın belirtilen amacı bu izinleri gerektiriyor mu? Bir not alma uygulaması Screen Recording'e ihtiyaç duymaz. Bir klavye yardımcı programı Full Disk Access'e ihtiyaç duymaz.

3. Ağ hedeflerini kontrol edin

Uygulama sizi merak ettiren her şeyi yaparken lsof -i -n -P | grep AppName çalıştırın. Uzak ana bilgisayarlara bakın. Olağandışı görünenler için ters DNS veya WHOIS araması yapın.

4. Gizlilik politikasını okuyun

Evet, sıkıcı. Ancak ilgili soru, "politika gözlemlediğinizi açıklıyor mu" sorusudur. Uygulama günlük telemetri yüklüyorsa ve politika "anonim kullanım verilerini topluyoruz" diyorsa, bu tutarlıdır. Uygulama günlük telemetri yüklüyorsa ve politika veri toplama hakkında hiçbir şey söylemiyorsa, bu bir uyumsuzluktur.

Bunu kendi makinenizde izleme

ova canlı uygulama başına oranları ve geçmiş zaman çizelgelerini gösteren bir menü çubuğu bant genişliği izleyicisidir. Bu yazıdaki tür araştırma için önemli olan:

  • Yardımcı süreçleri doğru şekilde işleyen uygulama başına atıf (yani bir Chrome Helper kendi satırı değildir).
  • Geriye kaydırabileceğiniz geçmiş, böylece "bu uygulama geçen Salı 03'te ne yaptı" sorusunun bir cevabı vardır.
  • Yalnızca yerel veriler, böylece korumaya çalıştığınız bilgileri bir bulut izleme hizmetine vererek paylaşmıyorsunuz.
Tasarım gereği yalnızca yerel
ova uygulama başına örnek verilerini diskte yerel olarak saklar. Telemetri yok, bulut senkronizasyonu yok, hesap yok. İzleme aracının kendisi gördüklerini yüklerse, gizlilik endişelerini izlemenin amacı sarsılır.

Normal nedir — birkaç örnek

Bilmediğinizde şüpheli görünen bazı uygulamalar:

  • mdworker_shared. macOS Spotlight indeksleyici. Arka plan işi, ağ ağırlıklı değildir.
  • trustd. SSL sertifikalarını doğrular. Apple sunucularıyla konuşur. Normal.
  • apsd. Apple Push Service. Apple'a uzun ömürlü bir bağlantı tutar. Normal.
  • nsurlsessiond. Arka plan ağ görevi planlayıcısı. Birçok uygulama yüklemeleri/indirmeleri buradan kuyruğa alır; orijinal uygulama olarak değil, çalışan olarak görünür.
  • syncdefaultsd. iCloud aracılığıyla tercihleri senkronize eder. Düşük hacim, sık.
  • Dropbox / Google Drive / OneDrive. Senkronizasyon istemcileri. Yüksek hacim, şüpheli değil.
  • Slack Helper (Renderer). Slack'in yardımcı süreçleri. Bir sürü; birlikte Slack'in trafiğini oluştururlar.

Bir süreci tanımıyorsanız, kesin adı tırnak içinde — "process_name" macOS — arayın ve genellikle beş dakika içinde net bir cevap bulursunuz.

Uygulamalarınızın çevrimiçi gerçekte ne yaptığını görün

ova bir bakışta görülebilir bir menü çubuğu bant genişliği izleyicisidir — yerel, imzalanmış, ~3 MB. Hesap yok, bulut yok.

Download for macOS

Bir şey gerçekten yanlış göründüğünde

Bir uygulamayı bir hafta izlediniz, desen belirtilen amacıyla eşleşmiyor, gizlilik politikası gördüklerinizden bahsetmiyor ve lsof mantıklı olmayan ana bilgisayarlara bağlantılar gösteriyor. Şimdi ne olacak?

Sırayla:

  1. Uygulamayı kapatın ve kaldırın. Çöpe sürüklemek her zaman yeterli değildir — birçok uygulama kalıcı olan LaunchAgents veya LaunchDaemons yükler. AppCleaner gibi araçlar yardımcı olur; ~/Library/LaunchAgents ve /Library/LaunchAgents'in manuel incelenmesi daha kapsamlıdır.
  2. Sahip olduğu gizlilik izinlerini iptal edin.
  3. Bildirip bildirmeyeceğinize karar verin. Apple Mac App Store raporlarını ciddiye alır. Apple Feedback Assistant ve App Store rapor akışı doğru kanallardır.
  4. Uygulamayı kullanmaya devam edeceğiniz bir makinede güvenlik duvarı seviyesinde "engellemeye" çalışmayın. Bu güvenlik duvarı kullanım durumudur (Little Snitch bölgesi). Bir izleyici görünürlük içindir; engellemek istiyorsanız, engelleyici bir araç kullanın. ova bir izleyicidir, bir güvenlik duvarı değildir.

Toparlarken

Çoğu uygulama iyidir. Birkaçı gürültülüdür. Az sayıda olmaması gereken çizgileri aşar. Ağda casusluk yapan bir mac uygulamasını tespit etmek paranoya değildir — hijyendir. Makinenizi bir hafta izleyin, bir taban çizgisi geliştirin ve anormal hiç çaba olmadan öne çıkar.

ova'yı yükleyin, sessizce çalışmasına izin verin ve bir sonraki sefer bir uygulama yanlış hissettiğinde bir önseziniz yerine veriniz olacak.