Zararlı yazılım, yeni 2FA devre dışı bırakma tekniğiyle Google yetki ilkelerini atlatıyor

Sonraki hikaye
Lukas Stefanko

Google, Mart 2019'da Android uygulamalarında SMS ve Arama Günlüğü izinlerinin kullanımını kısıtladığında, bunun olumlu etkilerinden biri de kimlik hırsızlığı uygulamalarının SMS tabanlı iki faktörlü kimlik doğrulama (2FA) mekanizmalarını atlatarak bu izinleri kötüye kullanma seçeneklerini kaybetmeleri şeklinde ortaya çıktı.

Artık Google'ın son kısıtlamalarını ortadan kaldırarak SMS izinlerini kullanmadan 2FA mesajlarındaki tek kullanımlık parolalara (OTP) erişebilen kötü amaçlı uygulamalar keşfettik. Bonus olarak, bu teknik ayrıca bazı e-posta tabanlı 2FA sistemlerinden OTP elde etmek için de çalıştırılabilir.

Uygulamalar, Türk kripto para değişim platformu BtcTurk'ü taklit ederek bu servise giriş yaparken girilen kullanıcı bilgilerini elde etmeye çalışır.  Bu kötü amaçlı uygulamalar kullanıcıların hesaplarında ve işlemlerinde 2FA korumasını atlatmak için SMS mesajlarına müdahale etmek yerine, OTP'yi tehlikeye giren cihazın ekranında görünen bildirimlerden almaktadırlar. Uygulamalar 2FA bildirimlerini okumanın yanı sıra, kurbanların sahte işlemlerin gerçekleştiğini fark etmelerini önlemek için bunları da devre dışı da bırakabilirler.

ESET ürünleri tarafından Android/FakeApp .KP olarak algılanan her türlü kötü amaçlı yazılım, yeni SMS yetki kısıtlamalarını atlatmak üzere tespit edilen ilk yazılımlardır.

 

Kötü amaçlı uygulamalar

Analiz ettiğimiz kötü amaçlı uygulamalardan ilki, 7 Haziran 2019 tarihinde Google Play'e “BTCTurk Pro Beta” ismiyle, “BTCTurk Pro Beta” adlı geliştirici tarafından yüklendi. ESET aracılığıyla Google'ın güvenlik ekiplerine bildirilmeden önce 50'den fazla kullanıcı tarafından yüklendi. BtcTurk bir Türk kripto para birimi borsasıdır; resmi mobil uygulaması borsanın web sitesine bağlıdır ve yalnızca Türkiye'deki kullanıcılar tarafından kullanılabilmektedir.

İkinci uygulama 11 Haziran 2019 tarihinde “BtcTurk Pro Beta” ismiyle, “BtSoft” adlı geliştirici tarafından yüklendi. İki uygulama çok benzer bir kılık değiştirme yöntemi kullansa da, farklı saldırganların işi gibi görünüyorlar. Uygulamayı 12 Haziran 2019'da, henüz 50'den az kullanıcı tarafından yüklendiğinde bildirdik.

Bu ikinci uygulama kaldırıldıktan sonra, aynı saldırganlar bu sefer “BTCTURK PRO” isimli;  aynı geliştirici adına, simgesine ve ekran görüntülerine sahip olan,  aynı işlevsel özelliklere sahip başka bir uygulama yüklediler. Uygulamayı 13 Haziran 2019 tarihinde bildirdik.

Şekil 1, Google Play'de görülen ilk iki kötü amaçlı uygulamayı göstermektedir.

Şekil 1. Google Play'deki sahte BtcTurk uygulamaları

 

Yeni 2FA devre dışı bırakma tekniği

Kurulumdan sonra, önceki bölümde açıklanan her iki uygulama da benzer bir yöntem takip eder. Blog paylaşımının bu bölümünde, ilk uygulama olan "BTCTurk Pro Beta"yı örnek olarak kullanarak yeni 2FA devre dışı bırakma tekniğini açıklayacağız.

Uygulama başlatıldıktan sonra, Şekil 2'de gösterildiği gibi Bildirim erişimi adı altında bir izin ister. Bu izin, uygulamanın cihazda yüklü olan diğer uygulamalar tarafından görüntülenen bildirimleri okumasına, bu bildirimleri devre dışı bırakmasına veya içerdikleri seçeneklerin tıklanmasına olanak tanır.

Şekil 2. Bildirim erişimi isteyen sahte uygulama

 

Bildirim erişimi yetkisi, Android 4.3 sürümünde (Jelly Bean) tanıtıldı; yani neredeyse tüm aktif Android cihazlar bu yeni tekniğe duyarlıdır. Her iki sahte BtcTurk uygulaması da çalışabilmek için Android 5.0 (KitKat) sürümü veya daha üst bir versiyon gerektirmektedir; bu nedenle Android cihazların yaklaşık %90'ını etkileyebilirler.

Kullanıcı bu yetkiyi verdikten sonra, uygulama Şekil 3'te gösterildiği gibi BtcTurk için kullanıcı bilgilerini isteyen sahte bir oturum açma formu görüntüler.

Şekil 3. Kötü amaçlı uygulama tarafından görüntülenen sahte giriş formu

 

Kullanıcı bilgileri girildikten sonra Şekil 4'te görüldüğü gibi Türkçe'de sahte bir hata mesajı görüntülenir. Mesajın İngilizce çevirisi şöyle: “Opss! SMS Doğrulama sisteminde yapılan değişiklik nedeniyle, geçici olarak mobil uygulamamıza hizmet veremiyoruz. Bakım çalışmaları tamamlandıktan sonra, uygulama aracılığıyla bilgilendirileceksiniz. Anlayışınız için teşekkürler.”

Arka planda, girilen kullanıcı bilgileri saldırganın sunucusuna gönderilir.

Şekil 4. Kötü amaçlı uygulama tarafından görüntülenen sahte hata mesajı

 

Bildirim erişimi izni sayesinde kötü amaçlı uygulama, SMS ve e-posta uygulamaları da dahil olmak üzere diğer uygulamalardan gelen bildirimleri okuyabilir. Uygulama içerisinde, Şekil 5'te görüldüğü gibi yalnızca isimleri “gm, yandex, mail, k9, outlook, sms, messaging” anahtar kelimelerini içeren uygulamalardan gelen bildirimleri hedeflemek üzere belirlenmiş filtreler vardır.

Şekil 5. Hedeflenen uygulama isimleri ve türleri

 

Hedeflenen uygulamalardan gelen tüm bildirimlerin görüntülenen içerikleri saldırganın sunucusuna gönderilir. Kurbanın kilitlenmiş ekrandaki bildirimleri görüntülemek için kullandığı ayarlara bakılmaksızın saldırganlar tarafından içeriğe erişilebilir. Bu uygulamanın arkasındaki saldırganlar, gelen bildirimleri de reddedebilir ve cihazın zil modunu sessiz olarak ayarlayabilir; bu da kurbanların sahte işlemlerin gerçekleştiğini fark etmelerini önleyebilir.

2FA katmanını atlatmanın etkinliğine gelindiğinde, tekniğin bazı sınırlamaları ortaya çıkmaktadır; saldırganlar yalnızca bildirimin metin alanına sığan bir metne erişebilir ve bu nedenle ilgili alanın OTP'yi içereceği garanti edilemez. Hedeflenen uygulama adları, hem SMS hem de e-posta üzerinden alınan 2FA parolalarının bu kötü amaçlı yazılımın arkasındaki saldırganların ilgisini çekeceğini gösteriyor. SMS yoluyla 2FA yapıldığında, iletiler genellikle kısadır ve OTP'lerin bildirim iletisine sığması muhtemeldir. Ancak, e-posta yoluyla 2FA doğrulaması gerçekleştiğinde, ileti uzunluğu ve biçimi çok daha çeşitlidir; bu da saldırganın OTP'ye erişimini etkileyebilir.

 

Hızlı gelişen bir teknik

Daha geçen hafta, Türk kripto para borsası Koineks'i taklit eden kötü amaçlı bir uygulamayı analiz ettik (@DjoNn35'u bu uygulamayı dikkatimize sunduğu için tebrik ediyoruz). Sahte Koineks uygulamasının SMS ve e-posta tabanlı 2FA'yı atlatmak için aynı kötü amaçlı tekniği kullanması ilginç olmakla birlikte, bildirimleri reddetme ve susturma yeteneğinden yoksundur.

İncelemelerimize göre bu uygulama, blog paylaşımında da analiz edilen “BTCTurk Pro Beta” uygulamasıını da geliştiren aynı saldırgan tarafından oluşturuldu. Bu, saldırganların SMS mesajlarını çalmak için “sonraki en iyi” sonuçları elde etmek adına şu anda bu tekniği geliştirmek üzere çalıştıklarını ortaya koymaktadır.

Şekil 6. Google Play'deki sahte Koineks uygulaması hakkındaki bilgiler

 

Nasıl güvende kalınır?

Bu kötü amaçlı uygulamalardan birini yüklediğinizden ve kullandığınızdan şüpheleniyorsanız, hemen kaldırmanızı öneririz. Hesaplarınızda şüpheli etkinlik olup olmadığını kontrol edin ve parolalarınızı değiştirin.

Geçen ay, Google Play'de yeni bir kripto para birimi zararlı yazılım dalgasına neden olan bitcoin'in artan fiyatı hakkında uyarıda bulunmuştuk. Bu son bulgu, dolandırıcıların henüz gelişmeden önce kazanç sağlama şanslarını artırmak için aktif olarak güvenlik önlemlerini atlatma ya yönelik yöntemler aradıklarını göstermektedir.

Bu yeni teknikten ve genel olarak zararlı finansal Android yazılımlarından korunmak için:

  • Hizmetin resmi web sitesiyle bağlantılıysa, yalnızca kripto para birimi ile ilgili olan uygulamalara ve diğer finans uygulamalarına güvenin
  • Hassas bilgilerinizi yalnızca güvenliğinden ve meşruluğundan emin olduğunuz çevrimiçi formlarda paylaşın
  • Cihazınızı güncel tutun
  • Tehditleri engellemek ve kaldırmak için güvenilir bir mobil güvenlik çözümü kullanın; ESET sistemleri bu kötü amaçlı uygulamaları Android/FakeApp .KP olarak algılar ve engeller
  • Mümkün olduğunda, SMS veya e-posta yerine yazılım veya donanım tabanlı tek kullanımlık parola (OTP) üreten çözümler kullanın
  • Yalnızca güvenilir olduğunu düşündüğünüz uygulamaları kullanın ve o zaman bile Bildirim erişimine yalnızca geçerli bir nedeni olan kişilerin ulaşmasına izin verin

 

Indicators of Compromise (IoCs)

Package name

Hash

btcturk.pro.beta

8C93CF8859E3ED350B7C8722E4A8F9A3

com.app.btsoft.app

843368F274898B9EF9CD3E952EEB16C4

com.app.elipticsoft.app

336CE9CDF788228A71A3757558FAA012

com.koinks.mobilpro

4C0B9A665A5A1F5DCCB67CC7EC18DA54

 

MITRE ATT&CK techniques

Tactic

ID

Name

Description

Initial Access

T1475

Deliver Malicious App via Authorized App Store

The malware impersonates legitimate services on Google Play.

Credential Access

T1411

User Interface Spoofing

The malware displays phishing activity and requests users to log in.