Özet
Lumma Stealer, Malware-as-a-Service (MaaS) aracılığıyla erişilebilen bilgi çalan bir kötü amaçlı yazılımdır. Parolalar, tarayıcı bilgileri ve kripto para cüzdanı ayrıntıları gibi hassas verileri çalmada uzmanlaşmıştır. Saldırgan, geleneksel kimlik avından sahte CAPTCHA doğrulamasına geçerek taktiklerini geliştirmiş ve Lumma Stealer’ı sunmak için meşru yazılımları kullanmıştır. Bu aldatıcı teslimat yöntemleri Lumma Stealer’ı kalıcı bir tehdit haline getirir.

Şekil 1: Lumma Stealer İnfaz Zinciri
Tehdit aktörleri sıklıkla çeşitli sağlayıcılarda barındırılan kimlik avı siteleri oluşturur ve çoğunlukla İçerik Dağıtım Ağlarını (CDN’ler) kullanır. Bu siteler ya istismarlardan yararlanır ya da kullanıcıları yük yürütmeye kandırır. Qualys Tehdit Araştırma Birimi (TRU) aktif bir Lumma Stealer kampanyasını izliyordu. Son zamanlarda, kullanıcıları yükü yürütmeye kandırmak için sahte CAPTCHA sayfalarının kullanıldığına rastladık. Son yükünü iletmek için çok aşamalı dosyasız teknikler kullanır ve bu da bu tehdidi aldatıcı ve kalıcı hale getirir.
İlk enfeksiyondan veri sızdırmaya kadar tüm saldırı zincirini araştırdık. Qualys EDR aracını, bu tür tehditlere karşı nasıl etkili bir şekilde koruma sağlayabileceğini göstermek için değerlendirdik. Ayrıca analistlerin oyun kitaplarına dahil edip ekleyebilecekleri ve bu tür tehditlere karşı gerçek zamanlı olarak etkili bir şekilde koruma sağlayan bazı temel tehdit algılama ve avlama sorguları sağladık.
Kampanya Analizi
- Kullanıcıların bu sahte CAPTCHA sitelerine, meşru yazılımları veya halka açık uygulamaları kullanan kötü niyetli kişiler tarafından yönlendirildiğini tahmin ediyoruz. Kullanıcı ‘Ben robot değilim’ düğmesine tıkladığında , doğrulama adımları sunulur. Bu adımların tamamlanması, hedef makinede bir başlangıç aşamasının (kötü amaçlı yazılım indiricisi) indirilmesini başlatan bir PowerShell komutunun yürütülmesini tetikler.

Şekil 2: Captcha Tıklaması ve Doğrulaması
Web sayfası kodu, doğrulama düğmesine basıldığında panoya kopyalanan Base64 kodlu bir PowerShell betiği içeren ‘verify’ adlı bir fonksiyonun gömülü bir yükünü ortaya koyuyor.


- Mshta.exe, HTML uygulamalarını ve gömülü betikleri çalıştırmak için güvenilir bir Windows aracıdır. Bir URL mshta’ya iletildiğinde, uzak bir yük indirir ve bunu INetCache dizinine yerleştirir. İndirilen ‘2ndhsoru’ dosyası, kaplama bölümünde betik bulunan Windows aracı “Dialer.exe”nin hazırlanmış bir PE dosyasıdır. Kaplama bölümünü boşalttık ve gizlenmiş bir JavaScript kodu olan betiği çıkardık (şekil: 7). Yük, geçerli HTA içeriğinin doğrudan mshta tarafından yürütülebilen diğer dosyaların içine yerleştirildiği poliglot adı verilen ilginç bir teknik kullanıyor. Betiğin tetik noktası, JavaScript kodunu yürütmek için bir eval işlevidir. (Şekil 8).

Şekil 5: PE’nin Kaplama Kesiti

Şekil 6: Kaplama Bölümünde Komut Dosyasının Başlangıcı

Şekil 7: Kaplama Bölümündeki JS Komut Dosyası

Şekil 8: Mshta JS Komut Dosyasını Çalıştırır
- Gizlenmiş JS betiği bir PowerShell betiğini ortaya çıkarır. Bu PowerShell betiği, AES şifreli bir yük ve sabit kodlanmış bir şifre çözme anahtarı kullanarak CBC modunda şifresini çözmek için bir rutin içerir. Betik ayrıca basit aritmetik gizleme tekniklerini de kullanır. PS betiğinde normalleştirilmiş değişkenler ve işlevlere sahibiz ve betiğin yükü nasıl indirdiğini ve yürüttüğünü ortaya çıkarırız (Şekil 10).

Şekil 9: Şifrelenmiş PS Komut Dosyası

- Son PS betiği ‘K1.zip’ ve ‘K2.zip’ dosyalarını geçici bir dizine indirir, içerikleri çıkarır ve yukarıdaki Şekil 10’da gösterildiği gibi “ Victirfree.exe ” (Lumma Stealer) dosyasını çalıştırır. Aşağıda DLL’lerden (K1.zip) ve “ VectirFree.exe ” (K2.zip) gelen içerikler bulunmaktadır .

- VectirFree.exe, kötü amaçlı yazılımların tespitten kaçınmak için kullandığı yaygın bir kötü amaçlı yazılım taktiği olan işlem boşaltmayı kullandı. Kötü amaçlı yükünü enjekte etmek için meşru bir program olan “BitLockerToGo.exe”yi hedef aldı.


- Ek olarak, BitLockerToGo dosyaları geçici dizine bırakır. 72RC2SM21DDZ2OAH3P30V1XPT5AE7YN.exe, “Killing.bat” ve “Voyuer.pif”i aynı dizine kopyalar. wrsa.exe (Webroot Antivirus Bileşeni), opssvc.exe (Quick Heal Antivirus Bileşeni) ve bdservicehost.exe (Bitdefender) gibi antivirüs işlemlerini tasklist ve findstr kullanarak kontrol eden bat betiği karartıldı.



- Kötü amaçlı yazılım, tehlikeye atılan sistemdeki çeşitli dizinlerde kripto para birimi ve parola txt dosyalarıyla ilgili hassas dosyalar ve veriler için bir arama başlatır. Özellikle *seed*.txt, *pass*.txt, *.kbdx, *ledger*.txt, *trezor*.txt, *metamask*.txt, bitcoin*.txt, *word*, *wallet*.txt gibi gizli bilgileri içerebileceğini düşündüren anahtar sözcüklere sahip dosyaları arar.


- Lumma Stealer, bir sistemi enfekte ettikten sonra çalınan verileri dışarı sızdırmak için komuta ve kontrol (C2) sunucularıyla iletişim kurar. “.shop” üst düzey etki alanı (TLD) ile C2 sunucu etki alanlarına bağlanmaya çalışır. Şu anda, bu C2 sunucularına ulaşılamıyor. Daha önce belirtildiği gibi, tehdit aktörleri yük dağıtımı için İçerik Dağıtım Ağlarını (CDN’ler) ve veri sızdırma için C2 sunucularını kullanır. Bu durumda, Tehlike Göstergeleri’nde (IoC) yer alan Cloudflare CDN’nin kullanımını bulduk.

Qualys EDR Nasıl Korur?
Tehditleri Önlemek
PowerShell kötü amaçlı komutu bir uç noktada yürütmeye çalıştığı anda, Qualys EDR, ön yürütme aşamasında PowerShell örneğini sonlandırarak dosyasız kötü amaçlı yazılım saldırısını belirler ve engeller. Bu, saldırı zincirini ilk aşamada kırar ve daha fazla kötü amaçlı yükün indirilmesini önler. Hassas veri sızıntısına ve dışarı sızmasına karşı korumada erken önleme çok önemlidir.

Tespit ve Avlanma
Lumma Stealer, EDR sisteminin yalnızca algılama yapacak şekilde ayarlandığı Qualys Research ortamında yürütüldü ve analiz edildi.
- Qualys EDR’deki ‘AMSI’ özelliği, yürütülen karartılmış betiklerin karartılmamış kodunu görüntülememize olanak tanır. PowerShell tarafından yürütülen kodlanmış yükü arayalım. Argümanın Base64 kodlanmış bir yük içerdiğini ve “Betik İçeriği”nin karşılık gelen karartılmamış ayrıntıları ortaya çıkardığını görebiliriz.

- C2 sunucusuna daha fazla yük teslimi için iletişim kurmaktan sorumlu olan mshta sürecini bildiğimizden, olayları filtreleyebilir ve indirilen dosyayı görebiliriz.

- C2 sunucusuna daha fazla yük teslimi için iletişim kurmaktan sorumlu olan mshta sürecini bildiğimizden, olayları filtreleyebilir ve indirilen dosyayı görebiliriz.

- Bu olayı işlem ağacında incelersek, mshta.exe, C2’den indirdikten sonra PS betiği yükünü yürütür.


- Olayı “ parent.name:Voyuer.pif “ ile filtrelediğimizde, Voyuer.pif’in (Autoit.exe) “ QuantumLink.scr ” ve “ a ” (c.a3x kopyası) öğelerini düşürdüğünü görüyoruz .

Şekil 26: Voyuer.pif Tarafından Gerçekleştirilen İşlem
- Tehdidi araştırmanıza olanak sağlayacak Qualys Hunting sorguları şunlardır.
| Tanım | Sorgu |
|---|---|
| PowerShell gömülü kodu yürütür | process.name:”powershell.exe” ve process.arguments: [“-e”, “-ec”, “-enc”, “-enco”, “encodedCommand”] |
| PE Dosyası (mshta) işlemi tarafından oluşturuldu | process.parentname: mshta.exe ve action: created ve file.type: PE |
| PowerShell tarafından oluşturulan dosya EPP tarafından algılandı | parent.name:”powershell.exe” ve type: file ve event.scoresource: “Anti-malware” |
| PowerShell tarafından gerçekleştirilen karartma tekniği | mitre.attack.technique.id: T1027 ve process.name:powershell.exe |
Çözüm
Lumma Stealer’a yönelik soruşturma, kötü amaçlı yazılımın uyum sağlama ve tespitten kaçma yeteneğiyle karakterize edilen gelişen bir tehdit manzarasını ortaya koyuyor. Meşru yazılımdan yararlanmaktan aldatıcı teslimat yöntemleri kullanmaya kadar çeşitli taktikler kullanıyor ve bu da onu güvenlik ekipleri için sürekli bir zorluk haline getiriyor. Enfeksiyon zincirine yönelik analizimiz, dosyasız kötü amaçlı yazılımın PowerShell ve mshta.exe gibi yaygın araçları nasıl kullandığını ve gömülü yüklerin ve işlem enjeksiyonunun operasyonlarındaki kritik rolünü vurguladı.
Qualys EDR, bu tür tehditleri tespit etme ve bunlara yanıt vermede değer göstermektedir. Gördüğünüz gibi, erken önleme (Şekil 27) bu saldırı zincirini ve bir kuruluş üzerindeki potansiyel etkisini durdurabilir.

Şekil 27: EDR’den Tehdit Zinciri
MITRE ATT&CK Teknikleri
IOC’ler
İhtisas
| C2 Alanı |
|---|
| futureddospzmvq[.]dükkan |
| yazarospzm[.]dükkan |
| mennyudosirso[.]dükkan |
| bayiospfosu[.]dükkan |
| quialitsuzoxm[.]dükkan |
| şikayetleripzzx[.]dükkan |
| bassizcellskz[.]dükkan |
| dilbilim[.]dükkan |
| kutlamaoopz[.]dükkan |
Dosyalar
| Dosya adı | Tip | Karma (SHA256) |
|---|---|---|
| 2.soru | PE32 | 7d6ee310f1cd4512d140c94a95f0db4e76a7171c6a65f5c483e7f8a08f7efe78 |
| K1.zip | Posta kodu | ca5c90bb87d4cb3e008cf85c2af5ef8b198546586b6b3c50cd00d3e02514e8b8 |
| K2.zip | Posta kodu | 7fbbbfb9a886e43756b705317d3dff3bc0b1698007512d4c42d9df9c955780ce |
| WMSPDMOD.DLL | DLL | 44fe887d10886aa8bbe8232fee270c21992aba9db959f58ebaea348af45e087a |
| WMSPDMOE.DLL | DLL | 2e56b42cf272f55cb3c8ed67245babb70b995d5b86863017fc846a68244b5773 |
| WmsStatusTab.Kaynaklar.dll | DLL | 92f31b07a70b98bd4f9e24e94acf10f7ac83cb2b642ca41c8bde147c9295588b |
| WMVCORE.DLL | DLL | 04beac6c1d6023442f94eebe4cdcec11bc47e0a89ec38ba2eb0584d741f8806d |
| WMVDECOD.DLL | DLL | 1cb6b6b1f0889771b740a22f119688e427be00de41e5a9440b2a85940b71396b |
| WMVENCOD.DLL | DLL | 3f4d33bc3402326c72db9ff484cccb929df458ca44b389ce1c505a3f237d23a4 |
| VectirFree.exe | PE64 | 7514d84ca507562a346896ff48a57d1d475f3cfed16e5e6abefd33a97c6323b9 |
| Enjekte Edilen Yük | PE32 | 867a63971c9e09e9f941d839d7ed328a4cdfea2fe985488e7d96bc0b31a34de2 |
| 72RC2SM21DDZ2OAH3P30V1XPT5AE7YN.exe | PE64 | 08f30ece5f7e77a69e58a970b3684c2a0eba1aa203ac97836baba32fc10a15e90 |
| Voyuer.pif (AutoIt.exe) | PE32 | d8b7c7178fbadbf169294e4f29dce582f89a5cf372e9da9215aa082330dc12fd |
| Killing.bat (Karmaşıklaştırılmış) | YARASA | 432a473f21a57610df93773a79ae94365d6c2b6aa1555123bfdd658a6f28cf2f |
IP
| IP | Kullanım Türü |
|---|---|
| 172.67.209.145 | Cloudflare CDN |
| 104.21.77.155 | Cloudflare CDN |
Katkıda bulunanlar
Alisha Kadam, Kıdemli Tehdit Araştırma Mühendisi, Tehdit Araştırması, Qualys
Kaynak: https://blog.qualys.com/vulnerabilities-threat-research/2024/10/20/unmasking-lumma-stealer-analyzing-deceptive-tactics-with-fake-captcha












Leave a Reply