Android işletim sistemli cihazlar, iki faktörlü kimlik doğrulama (2FA) kodları, konum geçmişi ve diğer özel verileri 30 saniyeden kısa sürede gizlice çalabilen yeni bir saldırı türüne karşı savunmasız hale geldi.
Akademik araştırmacılar tarafından geliştirilen ve 'Pixnapping' adı verilen bu yeni saldırı, kurbanın öncelikle kötü amaçlı bir uygulamayı Android telefon veya tabletine yüklemesini gerektiriyor. Sistem izinlerine ihtiyaç duymayan bu uygulama, yüklü olan diğer herhangi bir uygulamanın ekranda görüntülediği verileri etkin bir şekilde okuyabiliyor. Pixnapping, Google Pixel telefonlar ve Samsung Galaxy S25 gibi modellerde başarıyla gösterildi ve muhtemelen ek çalışmalarla diğer modellere de uyarlanabilir. Google geçtiğimiz ay önlemler yayınlasa da, araştırmacılar saldırının modifiye edilmiş bir versiyonunun güncellemeler yüklü olsa bile çalıştığını belirtiyor.
Ekran Görüntüsü Almak Gibi
Pixnapping saldırıları, kötü amaçlı uygulamanın, kimlik doğrulama veya hedeflenen diğer uygulamaların hassas bilgileri cihaz ekranına göndermesine neden olan Android programlama arayüzlerini çağırmasıyla başlıyor. Kötü amaçlı uygulama daha sonra saldırganın ilgisini çeken belirli pikseller üzerinde grafiksel işlemler gerçekleştiriyor. Pixnapping, kötü amaçlı uygulamanın bu koordinatlardaki pikselleri harflere, sayılara veya şekillere eşlemesine olanak tanıyan bir yan kanal (side-channel) açığından yararlanıyor.
Araştırmacılar, "Hedeflenen uygulama açıldığında görünen her şey, kötü amaçlı uygulama tarafından Pixnapping kullanılarak çalınabilir" diyor. "Sohbet mesajları, 2FA kodları, e-posta mesajları vb. görülebilir oldukları için hepsi savunmasızdır. Eğer bir uygulamanın görünmeyen gizli bilgileri varsa (örneğin, ekranda asla gösterilmeyen gizli bir anahtarı varsa), bu bilgi Pixnapping tarafından çalınamaz."
Bu yeni saldırı sınıfı, geçtiğimiz yıl keşfedilen ve kötü amaçlı web sitelerinin diğer web siteleri tarafından görüntülenen kullanıcı adları, parolalar ve diğer hassas görsel verileri okumasını sağlayan GPU.zip saldırısını anımsatıyor. GPU.zip, tüm büyük tedarikçilerin GPU'larında bulunan yan kanallardan yararlanarak çalışıyordu ve bu güvenlik açıkları hiç giderilmedi. Bunun yerine, tarayıcılar bu tür saldırıları, iframe'lerin (bir web sitesinin farklı bir alan adından bir sitenin içeriğini gömmesine izin veren HTML öğesi) açılma yeteneğini sınırlayarak engelledi.
Pixnapping, GPU.zip ile aynı yan kanalı hedef alıyor; özellikle de belirli bir karenin ekranda işlenme süresi.
Araştırmanın baş yazarlarından Alan Linghao Wang, "Bu, kötü amaçlı bir uygulamanın, diğer uygulamaların veya rastgele web sitelerinin görüntülediği hassas bilgileri piksel piksel çalmasına olanak tanıyor" dedi. "Kavramsal olarak, kötü amaçlı uygulamanın erişmemesi gereken ekran içeriklerinin ekran görüntüsünü alması gibidir. Uçtan uca saldırılarımız, pikselin beyaz mı yoksa beyaz olmayan mı olduğunu belirlemek için grafiksel işlemlerin kare başına işlenme süresini ölçüyor."
Pixnapping Üç Adımda Gerçekleşiyor
Saldırı üç ana adımda gerçekleşiyor. İlk adımda, kötü amaçlı uygulama, saldırganın gözetlemek istediği uygulamaya çağrılar yapan Android API'lerini çağırıyor. Bu çağrılar, etkilenen bir cihazda ilgilenilen yüklü uygulamaları taramak için de kullanılabilir. Çağrılar ayrıca hedeflenen uygulamanın erişebildiği belirli verileri, örneğin bir mesajlaşma uygulamasındaki bir konuşma dizisini veya belirli bir site için 2FA kodunu görüntülemesine neden olabilir. Bu çağrı, bilginin Android görüntü işleme hattına, yani her uygulamanın piksellerini ekrana getirerek işleyen sisteme gönderilmesini sağlıyor. Yapılan Android'e özgü çağrılar arasında etkinlikler (activities), niyetler (intents) ve görevler (tasks) bulunuyor.
İkinci adımda, Pixnapping, hedeflenen uygulamanın görüntü işleme hattına gönderdiği bireysel pikseller üzerinde grafiksel işlemler gerçekleştiriyor. Bu işlemler, uygulamanın çalmak istediği hedef piksellerin koordinatlarını seçiyor ve bu koordinatların renginin beyaz mı yoksa beyaz olmayan mı olduğunu, daha genel olarak ise rengin keyfi bir 'c' rengi veya 'c' olmayan bir renk olup olmadığını kontrol ediyor.
Wang, "Diyelim ki saldırgan, Google Authenticator tarafından bir 2FA rakamının oluşturulmasının bilindiği bir ekran bölgesinin parçası olan bir pikseli çalmak istiyor" diye açıklıyor. "Bu piksel ya beyazdır (eğer oraya hiçbir şey işlenmediyse) ya da beyaz olmayan bir renktedir (eğer bir 2FA rakamının bir parçası işlendiyse). Ardından, kavramsal olarak, saldırgan, hedeflenen mağdur pikseli beyaz olmayan olduğunda uzun, beyaz olduğunda ise kısa işlenme süresine sahip bazı grafiksel işlemler gerçekleştirmek istiyor. Kötü amaçlı uygulama, 1. Adımda açılan mağdur uygulamasının önüne bazı kötü amaçlı etkinlikler (yani pencereler) açarak bunu yapıyor."
Üçüncü adım, her koordinat için gereken süreyi ölçüyor. Her birinin sürelerini birleştirerek, saldırı görüntü işleme hattına gönderilen görüntüleri piksel piksel yeniden oluşturabilir.
Saldırının gerçekleştirilmesi için gereken süre, ölçülmesi gereken koordinat sayısı gibi çeşitli değişkenlere bağlıdır. Bazı durumlarda, saldırganın çalmak istediği bilgiyi elde etmek için katı bir son teslim tarihi yoktur. Diğer durumlarda - örneğin 2FA kodunu çalmak gibi - her saniye önemlidir, çünkü her biri yalnızca 30 saniye geçerlidir. Araştırmacılar, bu süreci detaylandıran bir açıklama sunuyor.
Google temsilcisi yaptığı açıklamada, "Eylül Android güvenlik bülteninde CVE-2025-48561 için bir yama yayınladık, bu da bu davranışı kısmen azaltıyor. Aralık Android güvenlik bülteninde bu güvenlik açığı için ek bir yama yayınlıyoruz. Gerçek dünyada istismar edildiğine dair herhangi bir kanıt görmedik" dedi.
Pixnapping, bir yüklü uygulamanın başka bir uygulamanın verilerine erişemeyeceği yönündeki Google'ın güvenlik ve gizlilik güvencelerinin sınırlamalarını gösteren faydalı bir araştırmadır. Ancak, gerçek dünya senaryolarında kullanışlı verileri çalmak için saldırıyı uygulama zorluklarının önemli olması muhtemeldir. Gençlerin sadece 'nazikçe sorarak' büyük şirketlerden sırları çalabileceği bir çağda, daha karmaşık ve sınırlı saldırıların faydası muhtemelen daha azdır.