FireAI Güvenlik Blogu

Yazan FireAI Security & Research Team · Yayınlandı

"Uygulama Olarak Yükle" Kimlik Avı: Bir Web Sitesi Yazılım Gibi Davrandığında

"Uygulama Olarak Yükle" Kimlik Avı: Bir Web Sitesi Yazılım Gibi Davrandığında

Chromium tabanlı tarayıcılar, kullanıcının hemen hemen her web sayfasını yerel bir uygulamaya benzeyen bir şeye dönüştürmesine olanak tanır: kendi penceresi, kendi Dock simgesi, görünür tarayıcı kromu yok. Bu özellik, sık kullandığınız meşru siteler içindir. Güvenlik araştırmacısı mr.d0x belgelendi, 11 Haziran 2024'te aynı mekanizmanın nasıl bir kimlik avı kitine dönüştürülebileceğini anlattı: Bir sayfayı uygulama olarak yükleyin, ardından uygulamanın kendi HTML'sinin içine sahte bir tarayıcı penceresi, adres çubuğu ve tümünü çizin.

Yüklü uygulama yanılsaması nasıl oluşturulur?

Belgelenen teknikte, kurban, kendisini bir uygulama olarak yüklemesini isteyen bir sayfaya yönlendiriliyor ve yükleme isteminde "Microsoft Oturum Açma" gibi sahte bir ad gösteriliyor. Uygulama yüklendikten sonra kendi kromsuz penceresinde açılır. Sahte olabilecek gerçek bir adres çubuğu olmadığından, sayfa CSS ile kendine ait bir sayfa çizer: ikna edici bir sahte, tam olarak tarayıcının adres çubuğunun olacağı yere konumlandırılır ve saldırganın görüntülenmesini istediği URL'yi gösterir. "Adres çubuğunu kontrol etmek" üzere eğitilmiş biri için uygulama bu kontrolü geçiyor gibi görünüyor çünkü baktıkları şey tarayıcının adres çubuğu değil.

Bunu gerçekten inandırıcı kılan şey nedir?

  • Normal bir yazılım gibi yüklenir: Dock veya Uygulamalar klasöründeki bir simge, kendi penceresi, bazen anlık bildirimler; bunların hiçbiri tarayıcının kendi yükleme akışından ayrılmayı gerektirmez.
  • Yükleme isteminin adı ve simgesi, saldırganın manifestosunda belirtilen şekildedir. Yükleme adımıyla ilgili hiçbir şey, adın siteyle eşleştiğini doğrulamaz.
  • Sahte krom, çalıştırıldıktan sonra oturumun ömrü boyunca varlığını sürdürür: yanılsamayı bozacak hiçbir tarayıcı sekmesi, yer işareti çubuğu veya uzantı simgesi yoktur.

Terminalden gerçekte kurulu olanı denetleme

MacOS'ta, Chrome ve Chromium tabanlı tarayıcılar bu "uygulamaları" sıradan uygulama paketleri olarak yükler ve her biri, Finder'da gösterilen ad ne olursa olsun, kendi Info.plist içinden yüklendiği gerçek URL'yi kaydeder. Bunu, bu Mac'te gerçek, şu anda yüklü olan bir uygulamaya (Cloudflare panosuna tarayıcı tarafından yüklenen bir kısayol) karşı doğruladık:

terminal
ls ~/Applications/*.localized/
Cloudflare.app

plutil -p ~/Applications/"Brave Browser Apps.localized"/Cloudflare.app/Contents/Info.plist | grep -i CrAppMode
  "CrAppModeShortcutName" => "Cloudflare"
  "CrAppModeShortcutURL" => "https://dash.cloudflare.com/"

Bu CrAppModeShortcutURL alanı, sahte adres çubuğunun değiştiremeyeceği bir gerçektir: yükleme sırasında sayfanın kendi bildiriminden bir kez ayarlanır ve uygulamanın her başlatılışında gerçekte açtığı alan budur. CrAppModeShortcutURL bankanızın gerçek alan adından başka bir yere işaret eden "Banka Girişi" adlı bir uygulama kendi kendini anlattı.

  1. Yüklü her web uygulamasını listeleyin: ls ~/Applications/*.localized/*/, kullandığınız Chromium tabanlı tarayıcı başına bir kez (Chrome Apps.localized, Brave Browser Apps.localized, Edge Apps.localized ve benzeri).
  2. Yüklediğinizi açıkça hatırlamadığınız veya oturum açma işlemini gerçekleştiren herhangi bir şey için gerçek URL'sini kontrol edin: plutil -p "<path>/Contents/Info.plist" | grep -i CrAppMode.
  3. Gerçek kökeni izleyin Chromium, uygulamanın kendi çizilmiş arayüzü yerine uygulamanın ne zaman açıldığını kısaca gösterir ve onu okur.

Bu neden yalnızca bir kullanıcı arayüzü sorunu değil, bir ağ sorunudur?

Pencere nasıl görünürse görünsün, kimlik bilgileri toplama sayfasının yine de Mac'inizde çalışan bir işlemden topladığı bilgileri ağ üzerinden bir yere göndermesi gerekir. Yalnızca "bu uygulamanın ikili dosyası imzalanmış ve güvenilir mi?" diye soran bir güvenlik duvarı burada yardımcı olamaz: Yüklü bir PWA, tarayıcının kendi imzalı, güvenilir yürütülebilir dosyasında çalışır. Yardımcı olabilecek şey bağlantının kendisini izlemektir: Ekrandaki pencerenin iddia ettiği şeyden bağımsız olarak bağlantının hangi süreç tarafından yapıldığı ve gerçekte nereye gittiği.

FireAI ve HisnLabs burada nereye oturuyor

Whatever a fake login screen looks like, it still has to send the password it captured somewhere; FireAI shows you exactly which process is trying to phone home and to what destination, installed web app or not, and lets you say no before anything leaves your Mac.

FireAI, HisnLabs’in kendi ürünüdür: doğrudan Mac’inizde çalışan, yapay zekâ destekli bir güvenlik duvarı. Uygulamalarınızın kurduğu her bağlantıyı sade bir dille gösterir ve Mac’inizden neyin çıkacağına sizin karar vermenizi sağlar — yapay zekâsı yerel olarak çalışır, yani trafiğiniz asla bize ya da başka birine gönderilmez. HisnLabs güvenlik araştırma ekibi bu kararların isabetli kalmasını sağlayan ekiptir: hangi alan adlarının sıradan telemetri, hangilerinin gerçek bir hizmet olduğunu kataloglar, bir bağlantının ardındaki ülkeyi ve ağı izler ve cihaz üzerindeki modeli (Autopilot özelliği) gerçek trafik örüntüleriyle eğitir — üstelik bunların hiçbiri Mac’inizden dışarı çıkmadan.

Arkasındaki teknik kararları okuyabilir ya da FireAI’yi 17 gün boyunca deneyebilirsiniz: HisnLabs’ten FireAI.

Kaynaklar