Watering Hole, Türkçe meali ile su kaynağı saldırısına kurak Afrika’da sıklıkla rastlanmaktadır. Susuzluğunu gidermek için su kaynağına giden hayvanların bir kısmı, bu su kaynağına ev sahipliği yapan timsahlar tarafından karşılanmaktadırlar. Pek misafirperver olan bu timsahların karınlarını doyurmak için tembel tembel suyun altında beklemek dışında başka bir şey yapmalarına gerek yoktur çünkü er ya da geç, susuzluğa yenik düşen hayvanlar, tıpış tıpış su kaynağına gidecek ve suyun altında gizlenen uyuşuk ama akıllı timsahların saldırıları sonucunda öğle yemeği olmaktan kurtulamayacaklardır.

İnternette gerçekleşen su kaynağı saldırılarının da Afrika’da gerçekleşenlerden pek bir farkı yoktur. Susayan hayvanların er ya da geç su kaynağına gitmesi gibi canı sıkılan, gündemi takip etmek isteyen çok sayıda kullanıcının da gün içinde haber, alışveriş, eğlence, magazin sitelerini ziyaret ettiğini bilen art niyetli kişiler, bu siteleri veya bu sitelerin içerik aldığı diğer siteleri/sistemleri (misal reklam siteleri, cdn vs.) hackleyerek, uyuşuk ama akıllı timsahlar gibi kurbanlarının, ayaklarına gelmelerini beklemektedirler. Hackledikleri sitelere zararlı kodlar yükleyen art niyetli kişiler, bu siteleri ziyaret eden kullanıcıların internet tarayıcılarında ve/veya eklentilerinde bulunan olası zafiyetleri (yaması geçilmemiş internet tarayıcısı, flash player, java vb.) istismar ederek bu kullanıcılarının sistemlerine zararlı yazılım yüklemektedirler.

Reklam olarak nitelendirilebilecek yazılar yazmamaya özen gösteren biri olarak, yazının devamında Fireeye NX cihazından bahsetmemin sebebinin, cihazın teknik olarak bu yazıya olan olumlu katkısı olduğunu belirtmek isterim.

Elinin altında Fireeye NX gibi kum havuzu analizinden faydalanarak ağ üzerinden zararlı yazılım tespiti yapabilen cihazı olanlar, 27 Kasım tarihinde Sözcü Gazetesi kaynaklı bir alarmla karşılaşmışlardır. Fireeye NX cihazı tarafından üretilen PCAP trafik dosyası ve analiz raporu incelendiğinde, Sözcü Gazetesi’nin web sitesinde yer alan reklam içeriğinin çekildiği bir sitenin (static.adhood.com/passbacks/sozcu_east/sozcu_east_passback_728x90.html) hacklendiği anlaşılabiliyordu. Analiz raporunda yer alan Macromed\Flash\Flash32_12_0_0_77.ocx bilgisi sayesinde, istismar kodunun Flash Player yazılımı ile ilgili olduğu ve zafiyet barındıran Flash Player yazılımı istismar edildiğinde de, kullanıcıyı http://82.146.32.54/noadboa2/load.php adresine yönlendirildiği anlaşılıyordu.

Flash Exploit
Flash Exploit

Bunun üzerine analiz raporunda yer alan SWF uzantılı Flash Player dosyasını incelemeye ve bunun hangi zafiyeti istismar ettiğini öğrenmeye karar verdim. İlk iş olarak Fireeye tarafından bu trafiğe özel olarak ürületilen PCAP dosyasını Wireshark ile açtım. Ardından bu dosyadan çıkardığım (File -> Export Objects -> HTTP) SWF dosyasını 440998.swf adı altında diske kaydettim.

Flash Exploit

İşi gereği güvenlik testleri veya zararlı yazılım analizi ile ilgilenenler veya hobi olarak merak duyanlar, SWF dosyasının Flash Player sanal makinesi tarafından, çalışma esnasında derlenen bir baytkoddan (interpreted) oluştuğunu, bu nedenle SWF dosyasının Sothink SWF Decompiler, Flash Decompiler Trillix gibi ücretli ve JPEXS Flash Decompiler gibi ücretsiz araçlar ile kaynak koduna çevrilebildiğini biliyorlardır.

Her ne kadar kaynak koduna çevirme işlemi, statik kod analizi için yapılıyor olsa da, Sothink SWF Decompiler gibi araçlar, bayt kodunu kaynak koduna çevirdikten hemen sonra bu SWF dosyalarını da çalıştırdıkları için sanal makinede yapılmayan bu kaynak koduna çevirme işlemi, sisteminizde istismar kodunun çalışmasına sebep olabilir bu nedenle çok ama çok dikkatli olmanız gerekmektedir!

Flash Exploit

Flash Decompiler Trillix ile kaynak koduna çevirme işlemi başarısızlıkla sonuçlandıktan sonra Sothink SWF Decompiler aracı ile SWF dosyasını kaynak koduna çevirip, kodu incelediğimde herhangi bir zararlı koda rastlayamadım.

Flash Exploit

Ücretli kaynak koda çevirici yazılımların çuvalladığı noktada JPEXS Flash Decompiler aracına bir şans vermek istedim. SWF dosyasını bu araçla açtığımda, BinaryData kısmında başka bir SWF dosyası daha olduğunu gördüm. Bunu da açıp içine baktığımda ise bunun DOSWF isimli bir araç ile şifrelendiği ve gizlendiğini gördüm.

Flash Exploit

440998.swf isimli dosyayı VirusTotal sitesine yüklediğimde, 55 tane Antivirüs yazılımından sadece 2 tanesinin bunu zararlı yazılım olarak tespit edebiliyordu. VirusTotal analiz raporunun File detail bölümünde, bu SWF dosyasının DOSWF programı ile gizlendiği, şifrelendiği ve DOSWF programının Username:[email protected] adına lisanslı olduğunu gördüm. “[email protected]” e-posta adresini Google’da arattığımda bu defa başka bir VirusTotal analiz raporu ile daha karşılaştım ve bu analizin yorumlar (comments) kısmında burada kullanılan istismar kodunun CVE-2014-0569 zafiyetini istismar ettiği bilgisine yer verilmişti.

Flash Exploit
Flash Exploit
Flash Exploit

ZDI’ın web sitesinde, CVE-2014-0569 zafiyetinin casi32 fonksiyonu ile ilgili olduğu bilgisine yer verilmişti. JPEXS aracı ile SWF dosyasının baytkodunu incelediğimde, bu istismar kodunun casi32 fonksiyonunda bulunan tamsayı taşması (integer overflow) zafiyetini istismar ettiğini gördüm.

Flash Exploit
Flash Exploit

İstismar kodunun kalbine yani kabukkoduna ulaşmak için öncelikle sanal makineye Flash Player v12.0.0.77 (flashplayer12_0r0_77_winax.exe) sürümünü kurdum. Daha sonra Internet Explorer internet tarayıcısı ile 440998.swf dosyasını çalıştırıp, Immunity Debugger hata ayıklayıcısı ile incelemeye başladım. Immunity Debugger üzerinde yeni DLL yükleyince durakla özelliğini aktif hale getirdikten kısa bir süre sonra bellekte 9090909090 baytlarını aratarak kabukkoduna kolayca ulaşabildim.

Flash Exploit
Flash Exploit
Flash Exploit

Ortaya çıkan kabukkodunu incelediğimde, bunun dinamik analizden de anlaşıldığı üzere bir HTTP indirici (downloader) kabukkodu (shellcode) olduğu rahatlıkla anlaşılıyordu. Kabukkodu ile indirilen zararlı yazılımı, VirusTotal sitesinde analiz ettirdiğimde, bunun şifre çalan bir zararlı yazılım olduğu ve çok sayıda antivirüs yazılımı tarafından hali hazırda tespit edilebildiği ortaya çıktı.

Flash Exploit

Kıssadan hisse, bu vakada da olduğu gibi su kaynağı saldırıları, günümüzde art niyetli kişiler tarafından sıklıklıkla kullanılan yöntemlerden sadece bir tanesidir. Özellikle bu yönteme karşı çalışanlarını korumak isteyen, olası bir sızma girişiminden haberdar olmak isteyen kurumlar, sıkı güvenlik politikalarının yanı sıra kum havuzu analizinden faydalanan sistemleri de mevcut güvenlik sistemlerine ek olarak değerlendirebilirler.

Tabi bu tür sistemlerin kur ve unut türü sistemler olmadığını dolayısıyla bu sistemleri yönetecek veya SOME gibi faydalanacak ekiplerin, zararlı yazılım analizi bilgi ve becerisine sahip olmaları gerekeceğinin de altını çizmekte fayda var.

Bir sonraki yazıda görüşmek dileğiyle herkese güvenli günler dilerim.