- 28 Mar 2020
- 130
- 14
Fileless Nedir ?
Dosyasız kötü amaçlı yazılım, genellikle herhangi bir iz bırakmadan sisteminize saldırılar gerçekleştirmek için PowerShell'i kullanır.
Bu tür saldırı, sıfır ayak izi saldırısı olarak da bilinir ve sisteminize harici kötü amaçlı (ve algılanabilir) ikili dosyaların sızmasına dayanmadığı için
tespit edilmesi özellikle zor olabilir.
Aksine, kendi araçlarınızı size karşı kullanır.
Siber güvenlik açısından bakıldığında, dosyasız enfeksiyonlara karşı koymayı bu kadar zor kılan şey ,
sisteminizi güvence altına almak için kullanabileceğiniz birçok temel işlemin üstesinden gelmeleridir.
Bulaşma kaynağı olarak işlev görecek dosya olmadığından,
virüs tarayıcıları dosyasız saldırıları algılayamaz ve imza tabanlı algılama sistemleri daha iyi sonuç vermez.
Bu, dosyasız kötü amaçlı yazılımın tespit edilemez olduğu anlamına gelmez. Daha ziyade,
bu tür bir saldırının ürettiği etkinlik türünü algılayabilen bir sistem dağıtmanız gerektiği anlamına gelir.
Yani fileless malware, bir cihaza bulaşmak için hedefe yeni bir yazılım yüklemek yerine cihazdaki mevcut yazılımları
örneğin powershell, cmd, wmic vs. kötü amaçlı kullanan zararlılardır.
Direkt olarak hedef sisteme dosya yüklenmez ve RAM üzerinde çalışırlar.
Bu yönlerinden dolayı herhangi imza tabanlı bir anti-virüs sistemi tarafından tespit edilemez.
Windows içerisinde bilmediğimiz ve zararlı yazılımların işine yarayacak birçok dosya ve binary bulunmaktadır.
Örneğin bitsadmin.exe binarysi arka planda kopyalama, indirme işlemlerini gerçekleştirebilmektedir.
Bu da saldırganlar için Windows işletim sistemlerini kullanarak fileless zararlısını kullanmaya bir nevi teşvik etmektedir.
Bu zararlı, legal sistem içerisinde çalıştığı için SOC takımları ya da log takibini yapan insanlar için anlaşılmasını oldukça zorlaştırmaktadır.
Fileless Malware bu nedenlerden dolayı günümüzde oldukça popüler hale gelmiştir.
Saldırganlar, fileless zararlı yazılımlarını birçok saldırı yöntemiyle
Fireyein yaptığı araştırmada, siber saldırıların %91i email ile başlamakta olup ve bunun %86sı fileless malware saldırı tekniğini kullanmaktadır.
Diğer saldırı yöntemleri ise zararlı url içeren pdf ve zararlı tarayıcı eklentilerini kullanarak saldırı yöntemleri çeşitlenmektedir.
Peki Nasıl Saldırı Yapıyorlar ?
Sosyal mühendislik yöntemleriyle hedefle iletişime geçerek bir şekilde mail adresi öğrenilir ve hedefe göndererek
Hedef linke tıkladıktan sonra Powershell tetiklenir.
Powershell ile hedef sisteme erişerek, keylogger kurulumu yapılıp kullanıcı şifreleri ele geçirilebilir.
Şimdi Saldırının Nasıl Yapıldığına bakalım
Yukarıdaki bilgilerle Fileless Malware in ne olduğunu, nasıl çalıştığını, hangi yöntemlerde kullanıldığını öğrenmiş olduk.
Ben bir de Fileless Malware i lab ortamında kurup, hangi yöntemlerle de korunacağını göstermek istiyorum. Malware demosunu gerçekleştirmek
için hazır olarak github üzerinde frameworkler bulunmaktadır. https://github.com/cobbr/Covenant adresindeki Covenant Framework ünü
kullanarak bir fileless oluşturup, belirlediğim hedef bilgisayara zararlıyı enfekte edeceğim. Siz de kendi lab ortamınızda adresteki Covenant
Framework ü indirerek test edebilirsiniz. Uygulama .net ile yazılmış olup, docker olarak da kurulumunu gerçekleştirebilmektesiniz. Kurulumu
tamamladıktan sonra oluşturacağınız kullanıcı adı ve şifre ile kendi ip adresinizi:7443 portunu kullanarak ara yüze ulaşabilirsiniz.
Uygulamanın ara yüzü bu şekildedir. Listener bölümünden, kullanacağımız zararlının hangi portu dinleyeceğini
belirleyebiliriz. Ben burada listener a filelesstest adını verip, dinleyeceğim portu da 4443 olarak belirledim. IP adresi bilgisini de kullandığınız
cihazın IP adresini vermelisiniz. Oluşturduğum urlye kullanacağımız launcher lar ile bağlantıyı gerçekleştireceğiz.
Launcher bölümünü görüntülediğimizde, kullanacağımız servisleri ve binarylere ulaşabiliriz. Listede bulunan
servislerin
hepsi Windowsun kendi servisleridir. Ben burada PowerShell uygulamasını kullanarak zararlıyı oluşturacağım. Powershelle tıklayıp ilerleyelim.
Burada oluşturduğumuz listener ı seçmemiz gerekmektedir. Bu listener ile zararlıya, belirlediğimiz porttan
ulaşabileceğiz. Bu alanda herhangi bir değişiklik yapmadan devam edebiliriz. Parametre alanında da, powershell çalışırken hangi parametreleri
kullanmasını istiyorsak kendimize göre dizayn edebiliriz. Bu parametre de, zararlı çalıştıktan sonra powershell i otomatik olarak kapatacaktır.
Generate e tıkladığımız an da hemen alt alanda zararlı oluşacaktır.
Görüldüğü gibi hedef sisteme göndereceğim pdf, Word, email içerisine bu kodu gömmemiz gerekmektedir. Bu kod ile
zararlı powershell i tetikleyip sisteme sızmamızı sağlayacaktır. Ayrıca burada encoded launcher seçeneğiyle oluşturduğumuz kodu
şifreleyebilmekteyiz. Bu şekilde bulunması ekstra zorlaşacaktır. Launcher alanındaki kodu kopyalayıp belirlediğim Windows Server 2012
cihazımda powershell e yapıştıracağım. Burada bu kodu Word, pdf e gömerek ya da başka yöntemlerle de hedefe zararlıyı gönderebiliriz.
Launcher dan kopyaladığımız kodu hedef sistemde bulunan powershell alanına yapıştırdım. Oldukça uzun bir koddur. Bu
kod daha da kısaltılabilir. Kodu yapıştırdıktan sonra entera basıp çalışmasını sağlamalıyız. Enter tuşuna bastıktan sonra powershell kendini
kapatacaktır. Burada herhangi bir hata ile karşılaşırsanız güvenlik duvarının aktif olup olmadığına dikkat ediniz. Güvenlik duvarının algılamasının
sebebi Covenant Frameworkte bulunan tüm zararlı çeşitlerini artık ortaya çıktığı için Windows Defender tarafından tanınmaktadır.
Zararlıyı çalıştırdıktan sonra Covenant Framwork e gelip Dashboard alanını kontrol edelim. Hedef sisteme artık
oluşturduğumuz zararlı yazılım enfekte olmuştur. Grunts alanına giderek hedef sistem üzerinde birçok şey yapabiliriz.
Grunt alanı, ele geçirmiş olduğumuz hedef sistemle etkileşime geçtiğimiz alandır. Burada neler yapabileceğimize task
alanından ulaşabiliriz. Hedef sistem üzerinde en basit olarak screenshot alabilir, kullanıcı şifrelerini ele geçirebilir ya da zararlının kalıcı olmasını
sağlayabiliriz.
Interact bölümünde hedef sistem üzerinde istediğimiz her işlemi gerçekleştirebiliriz. Hedef sisteme whoami diye soru
yönelttiğimde kendi bilgilerini göstermektedir. GetDomainUser parametresini kullandığım zaman tüm kullanıcının bilgilerini göstermektedir.
Oldukça fazla komut olduğu için hepsini denememiz neredeyse imkansızdır. Sizde kurmuş olduğunuz lab ortamında komutları ve zararlı
oluşturma seçeneklerini görüntüleyebilirsiniz.
Peki Biz Bu Saldırılardan Nasıl Korunabiliriz ?
Bu tip ataklarda enfenksiyon noktası olan son kullanıcı makinalarında gerekli koruma ve izleme önlemleri maksimum seviyede alınmalıdır.
Kullanıcı makinalarıdaki lokal admin hakkı alınmalıdır
Makinalarda dahili birimler üzerinden bulaşmayı kontrol altına almak adına media/port protection korumaları yapılmalıdır.
Son kullanıcı makinalarındaki windows event loglar mutlaka izlenmelidir/merkezi bir log yönetim sistemine atılmalıdır
Gelişmiş atakların monitor edilmesi ve engellenmesi için makine öğrenmesi ve davranış analizi yapan sistemler kullanılmalıdır
Son düzenleme: