FluBot Android Zararlı Yazılım Analizi
FluBot Analiz Özeti
FluBot zararlısı Android cihazları hedefleyen ve sahte SMS’ler aracılığıyla kurbanlara enjekte edilen bir zararlı yazılımdır. Oltalama (phishing) yöntemleri kullanılarak hazırlanan sahte SMS FluBot’un indirilmesini sağlayan bağlantıyı içerir. Bu bağlantıya tıklayan kurbanlar .apk uzantılı bir dosya indirirler. Kurulum işleminden sonra FluBot zararlısı komuta kontrol (C2) sunucusu ile iletişim kurarak cihazı uzaktan yönlendirir.
Gerçekleştirilen analizler sonucunda FluBot zararlısının kurban cihaz üzerinden SMS gönderme, gelen kısa mesajları okuma, arka plan uygulamalarını kapatma ve telefon rehberine erişme gibi yeteneklere sahip olduğu tespit edilmiştir.
Kurulum sonrası zararlı gerekli izinleri kurbandan aldıktan sonra ilgili oltalama senaryosu gereği kurbanı bir forma yönlendirir. Bu sayfada kurbandan doğum tarihi, ad-soyad, kredi kartı bilgisi ve telefon numarası gibi hassas bilgiler temin edilir. Ardından temin edilen bilgiler FluBot aracılığıyla saldırgana ait komuta kontrol sunucusuna gönderilir.
Sahte DHL SMS bilgilendirme mesajı (Phishing)
Başka bir örnekte ise FluBot’un sahe SMS ile kurban sisteme yüklenmesi işlemi göze çarpıyor. Hedef kullanıcı SMS ile gelen linke tıkladıktan sonra gelen web sayfası üzerinde, zararlı yazılımı indirmesi için hazırlanan sahte ve gerçekçi bir sayfa ile karşılaşıyor. (Örnek oltalama sayfasına ilişkin ekran görüntüsü aşağıda şekilde yer almaktadır)
Bulaşma Sıklığı ve Hedef Ülkeler
FluBot zararlısı yoğunluklu olarak ile Avrupa ülkelerini hedef seçmiştir. COVID sonrası artan paket dağıtım hizmetlerini phishing aracı olarak kötüye kullanmıştır böylece kısa bir zaman içinde çok hızlı bir yayılmaya sahip olmuştur.
FluBot Teknik Analizi
FluBot zararlısı indirildikten sonra cihaz içinde “full access” yetkisi verilmesi için kullanıcı onayı istemektedir. Onay, hedef kullanıcı tarafından verildikten sonra hedef kullanıcı uygulamayı kapatsa bile zararlı yazılım arka planda çalışmaya devam etmektedir.
Arka planda çalışan “com.eg.android.AlipayGphone” (FluBot) zararlısına ait izin listesi şu şekildedir:
- android.permission.INTERNET
- android.permission.READ_CONTACTS
- android.permission.WRITE_SMS
- android.permission.READ_SMS
- android.permission.SEND_SMS
- android.permission.RECEIVE_SMS
- android.permission.READ_PHONE_STATE
- android.permission.QUERY_ALL_PACKAGES
- android.permission.WAKE_LOCK
- android.permission.FOREGROUND_SERVICE
- android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
- android.permission.CALL_PHONE
- android.permission.REQUEST_DELETE_PACKAGES
- android.permission.KILL_BACKGROUND_PROCESSES
- android.permission.ACCESS_NETWORK_STATE
Yukarıdaki izinlerle erişen, kötü amaçlı yazılım aşağıdaki eylemleri gerçekleştirebilir hale gelmektedir.
• İnternet erişimi
• SMS Okuma / Gönderme
• Telefon rehberini okumak
• Çağrı Yapma
• Cihaz içinden uygulama silme
• Erişilebilirlik hizmetini kullanma yeteneği
• Cihaz bildirimlerini okuma
Hedef kullanıcıya ait Android cihaz artık sürekli olarak saldırganlara ait komuta kontrol sunucusu ile iletişim halindendir. Analizlerimiz sonucunda bu iletişimin saldırganın isteğine göre SOCKS Proxy üzerinden devam edebildiği tespit edilmiştir.
3.1- String Obfuscation (Karmaşıklaştırma)
FluBot zararlısı incelemeyi zorlaştırmak ve anti virüs yazılımlarını bypass etmek (atlatmak) için açık kaynak kodlu olan Paranoid isimli String obfuscator yazılımını kullanır böylece zararlı yazılıma çalışma aşamasında String verilerini gizleme özelliği kazandırılır.
Obfuscate edilen String veriler:
• BotId
• BrowserActivity
• CardActivity
• ComposeSmsActivity
• ContactItem
• DGA
• ForegroundService
• HttpCom
• IntentStarter
• LangTxt
• MainActivity
• MyAccessibilityService
• MyNotificationListener
• PanelReq
• SmsReceiver
• Spammer
• Utils
• SocksClient
• PanelReq
3.2 – String De-obfuscate
FluBot zararlısına ait String veriler saldırganlar tarafından gizlenir, analiz sonuçlarının doğrulu için Obfuscated olan String verilerim De-obfuscate edilmesi gerekmektedir. Bu işlem için açık kaynak kodlu olan bir Java yazılımından yararlanılmıştır.
Java yazılımı çalıştırıldığında chunks37 dizisi içerisinde bulunan veri matematiksel bir fonksiyon ile anlaşılır String veriye dönüştürülür. Sağ kısımda görüldüğü gibi çıktı olarak üretilen veri içerisinde farklı dillere ait phishing aşamasında kullanılan String veriler mevcuttur. (Card Number, CVV, Owner,Year vb.)
3.3 – Command And Control (Komuta Kontrol)
FluBot zararlısına ait en yeni versiyon 4.0 olarak ortaya çıkmıştır. FluBot hedef Android cihaza girdikten sonra saldırgan ile bağlantı kurmak için Domain Generation Algorithm (DGA) isimli bir algoritma yardımı ile random sayı ve harflerden oluşan bir domain oluşturmakta ve böylece saldırganlara ait komuta kontrol sunucuları bot yazılımlardan gizlenebilmektedir. Bağlantı özellikle 4.0 versiyonunda DNS veya DNS over HTTPS şeklinde gerçekleşmektedir. Böylece zararlı yazılım hedef cihaza bağlantı istek paketleri gönderdiği zaman güvenlik duvarı , EDR veya Anti Virüs sistemlerinden kaçınmaktadır.
2021-01-22 tarihinde başlayan yükseliş 4.0 versiyonu ile gerçekleşmiştir.
Google DNS özelliği saldırganlar tarafından kötüye kullanılmış böylece Google DNS tünel olarak kullanılıp saldırgana ait Command and Control sunucularına DNS üzerinden bağlantı istekleri yapılmaktadır. HTTP isteklerine ilişkin ekran görüntüsü aşağıda yer almaktadır.
DGA ile oluşturulan Command And Control sunucuları:
FluBot 4.0 versiyona ait “poll.php” üzerinden yapılan bağlantı isteğini gerçekleştiren fonksiyon, saldırgan C2 sunucusu üzerinden (PING,LOG,SMS_RATE,GET_SMS vb.) komutlarını uzaktan çalıştırabilmektedir.
Analizlerimiz sonucunda ortaya çıkan, FluBot zararlısının hedef cihaza uzaktan erişmek için DNS over HTTPS bağlantısını sağlamak ile görevli decompile edilmiş fonksiyon aşşağıda yer almaktadır.
Bu saldırı yöntemi özellikle İngiltere ve Amerika’da bulunan hedefler için seçilmiştir. En önemli fark ise FluBot 4.0 zararlısına ait farklı bir örnekte saldırganların bağlantı almak için Google DNS yerine Cloudflare DNS’i seçmiş olmalıdır.
FluBot zararlısının bir diğer özelliği cep telefonu numaralarında bulunan ülke bazlı kodları kullanarak o ülkeye ait spesifik saldırılar gerçekleştirmektir. Phishing saldırısı sırasında o ülkede bulunan kargo servisleri ve konuşulan dil saldırganlar tarafından dikkate alınmakta ve buna uygun bir ara yüz seçilmektedir.
Decompile edilen FluBot görselinde görüldüğü gibi bu örnekte Rusya’da bulunan hedefleri seçmiştir.
Hedef kullanıcıdan kredi kartı numarası, CVV, cihaz bilgisi gibi bilgileri çalmaktadır.
Phishing yöntemi ile kandırılan hedef kullanıcı bu bilgileri FluBot zararlısı içinde bulunan form arayüzüne girdikten sonra “GetCredential_A05” fonksiyonu ile String veriler saldırganlara iletilmektedir.
FluBot zararlısı tarafından hedef kullanıcıdan istenilen verilere ilişkin form (Phishing formu) aşağıdaki görselde yer almaktadır.
FluBot 3.7 Versiyonuna Ait HTTP Trafik Analizi
HTTP bağlantısını Burp Suite Proxy ile yakalamak için Frida kullanılarak zararlı yazılıma JavaScript kodu enjekte edilir bu sayede bağlantı yakalanabilmekte ve Android SSL Pinning bypass edilmektedir. Bağlantı incelendiği zaman poll.php üzerinden base64 ile encode edilmiş String veriler ile hedef cihazdan bağlantı isteklerinin gönderildiği göze çarpmaktadır. POST ve GET istekleri ile saldırganlar anlık olarak kurban cihaz ile haberleşmektedir.
4- MITRE ATT&CK Teknik ve Taktikleri (Android Cihaz İçin)
Tactic | Technique ID | Technique Name |
Defense Evasion | T1418 T1406 | 1. Application Discovery 2. Obfuscated Files or Information |
Credential access | T1409 | 1.Access Stored Application Data |
Discovery | T1421 T1422 T1430 T1418 T1426 | 1.System Network Connections Discovery 2. System Network Configuration Discovery 3. Location Tracking 4. Application Discovery 5. System Information Discovery |
Collection | T1432 T1430 T1507 T1409 | 1. Access Contact List 2. Location Tracking 3. Network Information Discovery 4. Access Stored Application Data |
Command and Control | T1573 T1071 T1571 T1219 | 1. Encrypted Channel 2. Application Layer Protocol 3. Non-standard Port 4. Remote Access Software |
Impact | T1447 T1448 | 1. Delete Device Data 2. Carrier Billing Fraud |
5 – IOC Verisi
FluBot v3.7
Phishing Correos Hash Verileri |
446833e3f8b04d4c3c2d2288e456328266524e396adbfeba3769d00727481e80 |
bb85cd885fad625bcd2899577582bad17e0d1f010f687fc09cdeb8fe9cc6d3e1 |
8c14d5bc5175c42c8dd65601b4964953f8179cfe5e627e5c952b6afd5ce7d39d |
Phishing Fedex Hash Verileri |
a601164199bbf14c5adf4d6a6d6c6de20f2ab35ec7301588bceb4ee7bb7d1fdc |
f0fa95c3b022fb4fee1c2328ffbc2a9567269e5826b221d813349ebf980b34da |
07ba6893c4ffc95638d4d1152f7c5b03aca4970474a95bf50942c619aa4382ae |
ca5ba6098a2a5b49c82b7351920966009a99444da4d6f6e5a6649e5e2aeb3ff8 |
8be8576c742f31d690d449ab317b8fb562d03bc7c9dc33fa5abf09099b32d7a0 |
Phishing DHL Hash Verileri |
54ecabbff30b05a6a97531f7dec837891ce49ae89878eaf38714c1874f5f1d15 |
c3838f9544e613917068f1b2e22ab647fd5a60701e1045b713767a92cf79f983 |
ab29813b1da1da48b4452c849eedc35b6c52044946d39392530573c540916f74 |
FluBot v4.0
Phishing DHL Hash Verileri |
3a4bdcb1071e8c29c62778101b7ae8746f3ee57cb1588e84d7ee1991964703e6 |
22025590bbb4d3a30658fea45a936b6a346479c83d1c35f85521a1ac564342a0 |
774acbfbedd2a37e636f6251af84a7abb2e64c2db9d6de5ce0fec4121064ea49 |
3bf82acb8d511bfef3e083b73136824aab3612b516f150d916fe351b7e5bc9d3 |
9b9b67a2b9ec5a15044430a9f5d9ce6a7f524e1feed186a96309256df686cfdd |
8bb8b1a1dc1487db610700f6b59ea4ab44ddc2f52e0eca06f8d1da663b312b58 |