SESSİZ DÜŞMAN: FİLELESS MALWARE
Günümüzde gelişen teknoloji ve savunma alanlarıyla birlikte saldırganların da bu gelişmelere uyum sağlayarak farklı komplike yazılımlar ve saldırılar geliştirmektedir. Bu yazımda siz değerli okurlar için saldırganların geliştirmiş olduğu çok tehlikeli bir malware olan fileless yazılımlarını ne olduğunu, nasıl korunmamız gerektiğini,zararlı kod incelemelerini ve nasıl çalıştığını inceleyeceğiz.
Nedir Fileless?
Fileless malware siber güvenlikte oldukça önemli bir konudur. Fileless malwarelerin bir diğer adı, "memory-resident (hafızada yerleşik)” dır. Fileless ,kötü amaçlı yazılımlardan farklıdır çünkü geleneksel kötü amaçlı yazılımlar, bilgisayar sistemi üzerindeki bir dosya aracılığıyla çalışır ve dosya sistemi üzerinde kalıcı bir iz bırakır.Fileless, bilgisayar sistemi üzerinde kalıcı bir dosya bırakmadan çalışma özelliğine sahiptir. Bu yazılımların tespitinde modern siber güvenlik çözümleri ve davranışsal analiz sistemleri kullanılmaktadır.
Fileless Sisteme Nasıl Sızar?
Fileless saldırılar genellikle zararlı e-postalar veya web siteleri aracılığıyla zararlı alanlara tıklama gibi kullanıcı hatalı yollarla sisteme sızmaktadır.
Örneğin, bir fileless malware, bir tarayıcı güvenlik açığından yararlanarak hedef bilgisayara girebilir. Bunu yapmak için hedef bilgisayara giren bir web sayfasının kodunu manipüle ederek hedef bilgisayarın belleğine yerleşebilir. Tabi ki burda anlaşılması gereken bir konu da bu web sitelerinin güvenilir olmayan web siteleri olduğudur. Ayrıca tanınmayan veya güvenilir olmayan e-postaların açılması linklere tıklanması sonucunda da sistemimize sızabilir.
Fileless Çalışma Mantığı
Fileless tipik kötü amaçlar gibi bellek kırılganlarını veya komut dosyaları(script) gibi hedef sistemin normal işlevlerini kullanarak saldırı gerçekleştirir. Geleneksel malware’ler gibi sisteme bir dosya olarak indirilmez ve yüklenemez. Sistem belleğini ve diğer kaynakları kullanarak zararlı işlemler gerçekleştirir. Ayrıca başka zararlı yazılımlar ile birleştirilerek daha da tehlikeli ve daha büyük bir tehdit haline gelebilir.
Bir bilgisayar sistemine sızarken sabit diskte veya bir sucunun içerisi yerine RAM veya sistem belleği kaynakları hedef alarak işlem yapar yani hedef bilgisayarın bellek (RAM) bölümünde yer alarak çalışır ve bunun sonucunda hedef bilgisayarın sistem dosyalarına dokunmadan çalışabilirler.
Kötü amaçlı yazılımın RAM üzerinde çalışması ve bellek günlüklerinde (log) iz bırakmaması, tespitini zorlaştırır ve yazılımın indirilecek bir dosyası olmadığından, antivirüs yazılımları da algılama ve tarama yapamaz bu nedenle geleneksel antivirüs programları tarafından tespiti daha zordur.
Fileles Malware kod örneği:
Yukarıdaki kod parçası, explorer.exe adlı bir işlem bulur ve belleğin başlangıcına bir malware dosyasını yükler. Son olarak, malware'nin giriş noktasını çalıştırarak explorer.exe üzerinde işlem yapmaya başlar.
Windows Explorer (explorer.exe) Nedir?
Windows işletim sistemi kullanıcıları, sıklıkla Windows Explorer (explorer.exe) programını kullanarak dosya ve klasörleri düzenlemekte, uygulamaları çalıştırmakta ve internet tarayıcılarına erişmektedir. Windows Explorer, işletim sisteminin önemli bir bileşeni olduğundan, bilgisayar korsanları da bu dosya yöneticisine yönelik saldırılar gerçekleştirmekte ve bu saldırıların çoğu da kullanıcıların farkında olmadan gerçekleşmektedir.
Örneğin, bir bilgisayar korsanı, bir web sitesinde yer alan bir reklamı veya bir e-posta iletilisini kullanarak, Windows Explorer üzerinden bilgisayarınıza zararlı yazılımlar bulaştırabilir. Bu yazılımlar, bilgisayarınızın performansını etkileyebilir, verilerinizi çalabilir veya başka kötü amaçlar için kullanılabilir.
Aynı Kodun Bir Diğer Saldırı Yöntemi
Bilgisayar korsanlarının Windows Explorer'in kullandığı DLL (Dynamic Link Library) dosyalarına saldırmasıdır. Bu saldırılar, DLL dosyalarının üzerine başka bir dosya ekleyerek veya DLL dosyalarını doğrudan değiştirerek gerçekleştirilebilir. Böylece, bilgisayar korsanları zararlı kodları Windows Explorer üzerinden çalıştırabilirler ve bu da bilgisayarınıza zarar verebilir.
DLL(Dynamic Link Library) Nedir?
DLL dosyaları bilgisayarlarda bulunan farklı programlar tarafından okunan ve kullanılan dosyalardır. Bu dosyalar bilgisayarda işlem yaparken arka planda çalışmayı sürdüren ve kullanıcılardan bağımsız olarakv çalışan dosyalardır. DLL dosyaları mevut fonsiyonları çalıştırmak için programlanırlar. Bazı dosya ve programların hızlı ve kolay bir şekilde gerçekleştiren bir dosyadır.
Windows Explorer Üzerindeki Saldırıların Etkilerini Azaltma Yöntemleri
Kullanıcılar düzenli olarak Windows güncellemelerini yapmalı, antivirüs yazılımı kullanmalı ve tarayıcılarına reklam engelleyici eklentiler eklemelidirler. Ayrıca, güvenilmeyen web sitelerinden gelen bağlantılara tıklamamak, bilinmeyen kişilerden e-postalarda bulunan dosyaları açmamak veya indirmemek de önemlidir.
Sonuç olarak, Windows Explorer, işletim sistemi kullanıcıları için önemli bir araçtır ancak bu araç da bilgisayar korsanlarının hedefi haline gelebilir. Bu nedenle, kullanıcılar güvenliklerini artırmak için bu tür saldırılara karşı dikkatli olmalı ve gerekli önlemleri almalıdır.
Peki bu kodun çalışma koşulları nedir?
- Hedef bilgisayarın Windows işletim sistemi çalıştırıyor olması gerekmektedir.
- Hedef bilgisayarın PowerShell çalıştırmaya izin vermesi gerekmektedir.
- Kullanıcının yönetici izinlerine sahip olması gerekmektedir.
- Hedef bilgisayarın antivirüs veya güvenlik duvarı tarafından algılanmaması gerekmektedir.
- Hedef bilgisayarın "Internet Explorer" uygulamasının çalıştırılmasına izin vermesi gerekmektedir.
Eğer bu örnek kod parçasını test etmek isterseniz, aşağıdaki adımları takip edebilirsiniz:
- Öncelikle bir sanal makine (Virtual Machine) oluşturmanız gerekir. Bu, gerçek bir işletim sistemi üzerinde kod parçasını çalıştırmaktan daha güvenlidir ve sisteminize zarar verme riskini en aza indirir. Yani sizin güvenliğiniz için önemlidir.
- Sanal makine üzerinde bir Windows işletim sistemi kurun ve güncellemeleri yükleyin.
- Powershell script execution policy ayarını değiştirin:
PowerShell'da, Set-ExecutionPolicy RemoteSigned komutunu çalıştırın. Bu, PowerShell'da yerel bir betik (script) çalıştırırken güvenlik uyarısı almanızı sağlar.
- Yukarıdaki örnek kod parçasını bir Powershell dosyası olarak kaydedin.
- Powershell'de, dosyayı çalıştırmak için .\dosyanın-adı.ps1 komutunu kullanın.
- Sistemdeki herhangi bir anti-virüs yazılımı, dosyayı algılayıp engelleyebilir. Bu nedenle, kod parçasını test etmeden önce anti-virüs yazılımınızın devre dışı bırakılması gerekebilir.
Yukarıdaki kod parçası, öncelikle antivirüs kılıflama işlemi gerçekleştirir. Bu işlem sırasında şifreleme algoritması kullanarak kötü amaçlı kodu şifreler ve daha sonra şifreyi çözerek çalıştırır. Kötü amaçlı kodların antivirus yazılımı tarafından tespit edilmesini engellemek veya etkisini azaltmak için kodu şifreler ve daha sonra şifreyi çözerek çalıştırır.Sonrasında yukarıdaki kod parçasında anlattığım işlemleri aynı şekilde gerçekleştirir.Ayrıca bu işlemleri yaparken bir backdoor kodu çalıştırarak sisteme tekrar erişebilmek için bir arka kapı bırakır.
Antivirus kılıfı, kötü amaçlı kodun yapısını değiştirerek veya kriptografik yöntemler kullanarak kodu karıştırarak antivirus yazılımlarının algılama algoritmalarını atlatır çünkü antivirus yazılımları şifreli kötü amaçlı kodları tespit ederken, şifreyi çözülmemiş bir metin olarak görürler.
Bir başka kod örneği:
İlgili kod'un Virustotal ile tarama sonucu:
Yukarıda verilen kod, bir backdoor ile birleştirilmiş bir fileless malware örneği içermektedir. Kod, Windows işletim sisteminde çalışır ve sistemdeki tüm dosyaları ve kullanıcı bilgilerini çalmak için tasarlanmıştır. İçerisinde fireless zafiyeti ile nelerin birleşebileceğini göstermke amaçlı bir örnektir.
Kodun çalıştırılması için "powershell.exe" ile çalıştırılarak PowerShell açılır."PowerShell" aracılığıyla, önceki bölümlerde açıklandığı gibi, "explorer.exe" işlemini kullanarak bir konsol açar ve ardından açılan konsol üzerinden tüm dosyaları ve kullanıcı bilgilerini çalarak kaydeder.Ardından, "netcat" adlı bir araç kullanarak çalınan verileri bir hacker sunucusuna gönderir.Son olarak, bir backdoor eklenerek, istenilen sunucusuna uzaktan erişim sağlanabilir hale getirilir.
Karşı sisteme nasıl gönderilir ?
- Visual Studio Code'u açın.
- Yeni bir dosya açın.
- Kodu dosyaya kopyalayın veya yazın.
- Dosyayı kaydetmek için "File" menüsünden "Save As" seçeneğini seçin.
- Dosya adını "zararli_kod.py" veya istediğiniz herhangi bir isimle kaydedin ve uzantısı ".py" olarak ayarlayın.
- Kaydet butonuna tıklayın.
Fileless Hangi Sekötrleri Ve Ne Tür Noktaları Hedef Alır?
Şirketler ve kişiler için büyük sorunlara neden olabilmektedir.
Fileless malware saldırıları, genellikle finansal kurumlar, sağlık hizmetleri ve kamu sektörü gibi hassas verileri bulunduran şirketlere yönelik olarak gerçekleştirilir. Örnek verecek olursak bir şirketin tüm verilerini şifreleyerek fidye talebinde bulunulabilir veya bir kullanıcının bankacılık bilgilerini alarak maddi zararlar doğurabilir.
PowerShell scriptleri, Windows Management Instrumentation (WMI) komutları veya JavaScript kodları gibi araçlar kullanılarak işletim sistemi hizmetleri hedef alınabilir.
Bu nedenle, bu tür kötü amaçlı yazılımların tespit edilmesi ve önlenmesi için, siber güvenlik uzmanlarının dikkatli bir şekilde davranmaları ve sistemlerin düzenli olarak güncellenmesi, izlenmesi ve korunması gerekmektedir. Ayrıca güvenlik yazılımlarının yanı sıra kullanıcıların da dikkatli olmaları, güvenlik yazılımlarını güncellemeleri ve iyi bir e-posta ve web güvenliği politikası benimsemeleri önemlidir.
Bu tür yazılımlardan korunmak için yapılması gerekenler şunlar olabilir:
- Sistemlere erişimi kısıtlayan izinlerin yönetilmesi
- Uygulamalar ve sistemlerin sürekli güncellenmesi
- Antivirüs programları ile davranışsal analiz programları da kullanılması
- Gelen e-postaların kontrol edilmesi ve bilimeyen e-postaların açılmaması
- Gidilen web sitelerinin ve sayfaları dikkatle seçmeli ve az haraket(tıklama) etmeliyiz.
Sonuç olarak, fileless malware kurban sistemlerde dosya izi bırakmadığından, tespit etmesi ve engellemesi daha zor olabilir. Ancak, güvenlik uzmanları, gelişmiş tespit ve savunma yöntemleri kullanarak tesipt edilebildiğini unutmayalım ve fileless gibi dosyasız kötü amaçlı yazılımların varlığı, geleneksel antivirüs yazılımlarının tek başına yetersiz olduğunu ve güncel siber güvenlik çözümleri ve teknolojileri kullanmak ve personel eğitimlerine önem vermek önemlidir.