‘Kar Körü’ Kurcalama Tekniği Android Kullanıcılarını Başıboş Bırakabilir


Güneydoğu Asya’dan gelen bilgisayar korsanları, Android’in en iyi uygulama güvenlik mekanizmasını kendilerine karşı çevirerek, istedikleri her türlü müdahaleyi gerçekleştirmek için çekirdek ile uygulama arasındaki bağlantıyı kesti.

Bu yöntem, Güneydoğu Asya’daki en az bir bankacılık uygulamasını hedef alan “Snowblind” adlı yeni kötü amaçlı yazılım tarafından kullanılıyor. Snowblind, aktarım halindeki sistem çağrılarını yakalamak ve değiştirmek için her yerde bulunan ve diğer açılardan geçerli olan Linux güvenlik özelliği “seccomp”u – “güvenli bilgi işlem”in kısaltması – kötüye kullanarak çalışır, aslında bir uygulamayı kötü niyetli müdahaleleri tespit etmek için ihtiyaç duyduğu protokollerden ve bilgilerden izole eder. .

Promon’da mühendislik başkan yardımcısı olan Jan Vidar Krey, “Güvenlikte hiçbir şey kurşun geçirmez değildir,” diyor ve böylesine temel bir Android güvenlik özelliğinin silaha dönüştürülmesinden yakınıyor. “Her şey bir dereceye kadar engellenebilir, bu da konuya sert ve acımasız bir bakış açısı, ancak gerçek bu.”

Android Kurcalamaya Karşı Kedi ve Fare Oyunu

Promon’un açıkladığı gibi Snowblind hakkındaki raporuBilgisayar korsanlarının Android cihazları baltalamanın en yaygın yolu, kullanıcıları kandırmaktır. onlara erişilebilirlik izinleri vermekbunu çeşitli kötü amaçlarla kullanabilirler.

Ancak bu çok yaygın olduğu için deneyimli geliştiriciler bunu nasıl hesaba katacaklarını zaten biliyorlar. Örneğin, Promon’un raporunda tartıştığı gibi uygulamalar, güvenilmeyen erişilebilirlik hizmetlerini kontrol etmek için işletim sistemini sorgulayabilir ve ardından buna göre tepki verebilir.

Saldırganlar ise bir uygulamanın kodunun bu işi yapan kısımlarını “yeniden paketleme“onlar – meşru uygulamaların kötü amaçlı sürümlerini indirmek, değiştirmek ve yeniden yüklemek.

Yeniden paketlemeyi önlemek için geliştiriciler, kodlarını gizleme yoluyla koruyarak proaktif olabilirler veya bir uygulamanın diskteki Android paket (APK) dosyasını açıp içeriğini inceleyerek reaktif olabilirler.

Saldırganların kötü niyetli yeniden paketlemelerini gizlemek için kendi yöntemleri vardır. Örneğin, kurcalamaya karşı koruma sağlayan dosya okuma sürecine bağlanıp onu aynı uygulamanın değiştirilmemiş bir sürümüne yönlendirebilirler. Ancak geliştiriciler bunu biliyor ve gerekli sistem çağrılarını C standart kütüphanesi yerine yerel kütüphanelerde uygulayarak bunu da açıklayabilirler.

Dolayısıyla bu noktada köşeye sıkışan saldırganların, güvenli uygulamaların kurcalanmalarını tespit etmesini önlemenin yeni bir yoluna ihtiyacı vardı.

Snowblind’in Kurcalamaya Karşı Koruması

Bu büyük oyunun bir sonraki evrimi olan Snowblind yeni bir şey deniyor. Odak noktasını kendi başına erişilebilirlik hizmetlerine veya uygulamanın koduna değil, aradaki seccomp güvenlik özelliğine odaklıyor.

Krey, “Bu seccomp mekanizması, bugün bulutta gördüğünüz her şeyin temelidir” diye belirtiyor. Android’e ek olarak – sürüm 8.0 Oreo’dan bu yana – Docker (varsayılan olarak) ve Kubernetes, Chromium tarayıcılar ve daha fazlası gibi konteynerleştirme teknolojileri tarafından da kullanılıyor.

Uygulamaları korumalı alana alarak, sistem yöneticisi tarafından tanımlandığı şekilde işletim sistemine yapabilecekleri çağrılara izin vererek veya bunları engelleyerek çalışır. Ancak bu günlerde Krey şöyle açıklıyor: “Android’de gördüğümüz şey, kötü amaçlı yazılımın, bir uygulamanın sistemin geri kalanında gerçekte neler olup bittiğini görmesini engellemek için aynı güvenlik hilelerini kullanmasıdır. Temel olarak ona yalnızca saldırganın ne istediğini gösterir. görmektir.”

İlk olarak Snowblind, herhangi bir kurcalama önleme mekanizmasının çalıştırılmasından önce yüklenecek bir kitaplığı içeren bir uygulamayı yeniden paketler. Bu kitaplık, dosyaları veya diğer kaynakları açmak için kullanılan “open()” gibi çok seçilmiş birkaç sistem çağrısını gözeten ve onları yakalayan bir seccomp “filtresi” içerir. Çağrının yürütülmesine izin vermeden önce, onu değiştirmek için bir sinyal işleyici kullanır ve onu uygulamanın orijinal, değiştirilmemiş sürümü olan bir dosyaya yönlendirir.

Başka bir deyişle, kötü amaçlı yazılım, cihazın ortasındaki küçük bir adam gibi, uygulamanın kurcalanıp kurcalanmadığını bilmesi gereken sinyalleri yakalar ve yanlış yönlendirir.

Mükemmel Çözüm Yok

Bir uygulamayı tamamen izole eden bir bankacılık Truva Atı, bir cihazda herhangi bir sayıda kötü amaçlı eylem gerçekleştirmek için erişilebilirlik hizmetlerini serbestçe kullanabilir: kimlik bilgilerini çalmak ve sızdırmak, iki faktörlü kimlik doğrulama (2FA) kodlarına müdahale etmek ve diğer işlevlerin yanı sıra diğer uygulama güvenlik özelliklerini devre dışı bırakmak .

Promon, Snowblind’in stratejisinin Android telefonlarda kurcalamayı önlemeyi yenmekten daha fazlasını yapmak için kullanılabileceğini belirtti. Bulut veya kapsayıcıya alınmış ortamlarda, Chromium tarayıcılarda veya seccomp’a dayanan diğer herhangi bir sistem türünde, teoride, herhangi bir nedenle sistem çağrılarına dayanan herhangi bir kodu izlemek ve değiştirmek için kullanılabilir.

Peki savunmacılar nasıl tepki verecek? Krey için bariz ve kapsamlı bir çözüm yok çünkü seccomp bu sistemlerin korunması açısından çok önemli. “Seccomp pek çok farklı uygulamanın ayrılmaz bir parçası” diye açıklıyor, “bu yüzden bunu nasıl düzelteceklerini gerçekten bilmiyorum. Ve dürüst olmak gerekirse bunu düzeltmeleri gerektiğini de düşünmüyorum. Bu bir nevi paradoksal bir şey.”

Dark Reading, Snowblind’in kurcalamaya karşı korumasına karşı savunma konusunda sahip olabileceği her türlü bilgi için Google’a ulaştı.





Source link