Günümüzün yaygın sorunlarından olan siber saldırılar ve tehditler, kişileri, şirketleri ve devletleri zor durumda bırakabiliyor. Siber saldırılar, çeşitli yöntemlerle yapılabilmektedir. Bu yöntemlerden en yaygın olanlarından birisi de “Malware” yazılımlarıdır. Peki nedir bu Malware?
Hemen hemen herkesin bir şekilde duyduğu ya da karşılaştığı bu kötü amaçlı yazılımlara Malware adı verilmektedir. Bilgisayar sistemlerine zarar vermek, kayıtlı bilgileri çalmak/kazanç sağlamak ya da bilgisayar kullanıcılarını rahatsız etmek için hazırlanmışlardır. Bilgisayar sistemi üzerinden USB bellek, harici disk gibi aygıtlara da geçiş yapabilen bu virüs çeşitleri çoğu zaman dokümanlara erişimi de engelleyebilir. İnternet ortamı her ne kadar bilgi ile doluysa da aynı zaman virüs ve malware denilen kötü amaçlı yazılımları da barındırmaktadır.
Birçok malware tipleri bulunmaktadır. Virüsler, spyware, worm, trojan, browser hijacker, rootkit, malwertising gibi önceden beri var olan zararlı yazılımların günümüzde farklı çeşitleri de ortaya çıkmıştır. Bunlara ek olarak;
zararlılarını da artık listeye ekleyebiliriz. Malware in ne olduğunu hatırladığımıza göre bu yazının konusuna artık geçebiliriz.
Türkçe’ye dosyasız olarak geçen Fileless bir saldırı tekniğidir. Geleneksel zararlı yazılımların aksine diske herhangi bir şey yazmadan, dokunmadan çalışırlar. Fileless tekniğini kullanan zararlılar genellikle işletim sisteminizdeki yerleşik olan araçları, yazılımları ve sistem araçlarını kullanmaktadırlar. 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 binary’si 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 kullanmaktadırlar. Fireye’in yaptığı araştırmada, siber saldırıların %91’i email ile başlamakta olup ve bunun %86’sı 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.
Bu zararlıya dosyasız dememizin sebebi, zararlının çalışması için herhangi bir kuruluma ihtiyacı olmadığındandır. Hedef ile yine de etkileşime geçmek gerekmektedir. İster flash bellek kullanarak istersek, zararlı Word, PDF içerisine gizleyerek de hedefe zararlıyı gönderebiliriz.
Örnek senaryomuzda hedef cihazda, powerhell uygulamasını tetikleyecek zararlı bir url hazırladığımızı düşünelim.
Powershell, özellikle sistem adminleri tarafından sıklıkla kullanıldığından dolayı kullanımının engellenmesi geleneksel güvenlik çözümleri ile mümkün değildir. Fileless Malware ile örnek senaryoya benzer bir senaryo ile hedef sistemlere ransomware fidye yazılımı da bulaştırılabilmektedir.
Yukarıdaki senaryoda aslında fileless malware in süreci görseldeki gibidir. Herkesin ziyaret ettiği ya da edebileceği bir siteye fileless malware gömülerek tıklanması sağlanabilir. Tıklama gerçekleştikten sonra makro yazılımlar çalışmaya başlayacaktır. Makrolar çalışmaya başladıktan sonra bir javascript veya powershell ortaya çıkarak kendini aktifleştirir. Aktifleştikten sonra Windows sistemlerinde bulunan tüm script ve binaryleri kullanarak sistemi ele geçirmeye başlamaktadır. Diske hiçbir şey yazılmamakla birlikte doğrudan RAM üzerinde çalışır. Fileless malware anti-virüs yazılımlarını da bu şekilde atlatmaktadır.
Fileless Malware günümüzde popüler olmasına karşın ilk olarak 2015 yılında, Kaspersky şirketini hedef alan bir dosyasız yazılımla keşfedilmiştir. Duqu zararlısının ağda en az 6 ay boyunca tespit edilemediğini hesaplayan Kaspersky, bu virüsü Duqu 2.0 olarak adlandırmıştır. Duqu, Word belgesinden doğrudan Kernel moduna geçmelerini sağlayan bir zafiyet doğurmuştur.
2017 yılında çıkan bir habere göre, Rus Hackerların, atmler de Fileless Malware tekniğini kullanarak 800.000$ çaldıkları tespit edilmiştir. Bu saldırıda ATM lerin mevcut meşru yazılımları kullanarak yapıldığı tespit edilmiştir. Haberi linkten okuyabilirsiniz. https://www.vice.com/en_us/article/538ebn/atm-hack-russia-disappearing-malware
Yine 2017 Mayıs sıralarında da saldırganlar, Asya’da bulunan bir şirketi hedef aldı ve Powershell scriptleri kullanarak sistemde yetki kazandılar. Cobalt Strike Beacon’ı kullanarak bir komuta kontrol sunucusu ile iletişim kurduğu için saldırı, “Cobalt Kitty” olarak isimlendirilmiştir.
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 url’ye 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 Windows’un kendi servisleridir. Ben burada PowerShell uygulamasını kullanarak zararlıyı oluşturacağım. Powershell’e 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 enter’a 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 Fileless Malware den nasıl korunuruz?
Bu tip ataklarda enfenksiyon noktası olan son kullanıcı makinalarında gerekli koruma ve izleme önlemleri maksimum seviyede alınmalıdır.
Bu anlamda WEF konfigürasyonu ve ya sysmon gibi yazılımlar, EPP ve EDR çözümleri, son kullanıcı makinalarındaki yetki yönetimi yapan yazılımlar önemli fayda sağlayacaktır.
Tüm bunların yanında şirket uç noktasında çift yönlü haberleşmeyi kontrol eden IPS, Web Filtreleme, Sandbox gibi güvenlik teknolojilerin konumlandırılması ve güvenlik politikalarının sıkılaştırılması gerekmektedir. Cloud kullanımlarında ise Cloud Application/Access Security Broker(CASB) sisemleri kullanılabilir Günümüzde internet trafiğinin %80’nin şifreli olduğunu göz önüne aldığımızda güvenlik cihazlarının SSL trafiğini şifresiz inceleyebilmesi için SSL/HTTPS inspection mutlaka yapılmalıdır.
Siber saldırıya uğramış kurumların log management sistemlerinin geniş spekturumda iç entegrasyonu gerçekleştirilmeli, log review yapmalı, özelleştirilmiş korelasyon kuralları oluşturulmalı, incident management süreçlerini olgunlaştırılmalı ve senaryo çalışmaları ile de otomatik aksyionlar hayata geçirilmelidir. Mitre Att&ck framework’ü içinde bulunan teknik ve taktiklerin incelenmesinin ve SIEM sistemelerine entegrasyonunun sağlayacağı faydaya da değinmeden geçmemek lazım. Fileless Malware ile ilgili T1086 tekniğini https://attack.mitre.org/techniques/T1086/ adresinden inceleyebilirsiniz.
Diğer korunma yöntemlerinden en klasik ve bir o kadar da önemli olanı kullanılan yazılımların en güncel seviyede tutulması gerekliliğidir. Phishing saldırılarına karşı e-mail güvenliğini sağlayıp, Microsoft Office yazılımlarında macro özelliği devre dışı bırakılmalıdır. Kurumlar bu tür zararlıları engellemek için doğru güvenlik yatırımları yapmaları gerekmektedir. Ayrıca bu tür tehditlerin her zaman farkında olup, sistemlerini güncel tutmaları gerekmektedir.