Bu yazımızda siber savaş araçlarından “Siber Casus” olarak nitelendirilen Flame virüsünü detayları ile birlikte inceleyeceğiz.
Silah savaşları gün geçtikçe yerini siber savaşlara bırakıyor. En son 2010 yılında Stuxnet virüsü ile İran nükleer santralleri hedef alındı. Yapılan incelemelerde virüsün 2009 yılında yazıldığı, 4 adet zero day (0 day) güvenlik zafiyeti barındırdığı ve virüsün flash diskler üzerinden yayıldığı tespit edilmiştir. 1 yıldan fazla sürede tespit edilemeden çalışmasına devam eden virüs, İran’a 800 milyon dolarlık zarar vermiştir.
Daha sonra Duqu virüsü ile Microsoft Word programındaki bir güvenlik zafiyeti kullanılarak, İran’daki nükleer santrallere ait bilgiler toplandı. Duqu ise mailler üzerinden yayılan bir zararlı yazılımdı.
Flame virüsü geçtiğimiz günlerde Rus güvenlik firması Kaspersky tarafından tespit edilmiştir. Stuxnet’e oranla 20 kat daha karmaşık bir mimariye sahip olduğu gözlenen siber casus, tahminlere göre 2010 Ağustos ayından bu yana aktif olarak çalışmaktadır.
Yapılan incelemelerde virüs başta İran, İsrail, Sudan, Suriye, Lübnan, Suudi Arabistan ve Mısır olmak üzere 600 den fazla kuruluş, akademik kurum ve devlet sistemi hedef almış durumdadır.
Makaleyi kaleme aldığım bugün dahi Flame virüsü tam olarak çözülememiştir. Kaspersky tarafından yapılan açıklamada virüsün şifrelerinin çözümlenmesi yılları bulacaktır. Ancak virüsün bazı modülleri şuan çözülmüş durumdadır. İran’ın Bilgisayar Acil Durum Tepki Ekibi (Maher)’nin yaptığı resmi açıklamaya göre virüsün 43 antivirüs uygulaması tarafından tespit edilemediği, ancak virüsün manuel yöntemler ile tespit edildiği ve virüsün en kısa sürede temizleneceği açıklaması yapıldı.
Güvenlik uzmanlarına göre, virüsün planlama ve programlamasının 5 yıl sürdüğü, iyi bir ekip tarafından hazırlandığı ve arkasında mutlaka bir devlet olduğu ileri sürülmektedir.
Flame neler yapıyor?
Flame, casusluk faaliyetlerini sürdürebilmek amacıyla, klavye, USB bağlantılar, işlemci, mikrofon, depolama aygıtları, Wi-Fi, monitör, Bluetooth gibi bir çok donanımı kullanabilecek kapasiteye sahiptir. Sızdığı bilgisayarlarda kendini belli etmemek için 5 ayrı şifreleme algoritması ile kendini kriptolayarak gizleyebilen Flame, casusluk işlemlerini arka planda yapabilmektedir.
Resim-1
Bir sisteme bulaştıktan sonra, ağ trafiğini dinleyip, ekran görüntülerini çekip, klavyede yazılanları loglayıp, mikrofon ile konuşmaları kaydeder. Flame içerisinde SqlLite3 veritabanı kullanılmış, topladığı bu bilgileri kendi veritabanında kriptolanmış bir yöntem ile sakladıktan sonra çeşitli zamanlarda gizli SSL kanallarından Flame sunucularına göndermektedir. Bu işlemlerde Flame, XMPP (Jabber) protokolünü kullanır. XMPP protokolünün en büyük özelliği, eş zamanlı aktarımlara olanak sağlayan bir protokoldür. XMPP protokolünün kullanılmasındaki asıl neden ise, bu protokolün eş zamanlı olarak metin, ses ve görüntüyü XMPP sunucularına iletebilmesidir. Flame’in yapabildiği saldırı türevleri Resim-01’deki gibidir.
Flame, Stuxnet’te olduğu gibi Autorun dosyaları üzerinden de yayılabilmektedir. Autorun üzerindeki saldırı iki kısımdan meydana gelmektedir. Bunlar “Autorun Infector” ve “Euphoria” yöntemleridir.
Autorun Infector yöntemi ile virüs depolama cihazlarında Autorun.inf dosyasını oluşturur. Böylece “shell32.dll” dosyasına kendini bulaştırarak yayılmaya çalışır.
Euphoria yöntemi ile de virüs, depolama aygıtına bir “kısa yol” dosyası (.LNK) yükler. Daha sonra bu kısa yol dosyası üzerinden depolama aygıtının takıldığı cihazlara kendini kopyalar.
Yerel ağlarda, MS10-061 güvenlik zafiyetinden faydalanarak, bir MOF dosyası kullanıp WMI (Windows Management Instrumentation – Windows Yönetim Araçları) araçlarına erişir.
Flame eğer etki alanı denetleyicilerinden yetkili bir kullanıcı hesabına ait bir bilgisayara bulaşmış ise, ağ içindeki tüm bilgisayarlara kendini kopyalar. Bulaştığı bu ağ bilgisayarlarına bir arkakapı (backdoor) oluşturarak çalışmasına devam etmektedir.
Resim-2
Kaspersky firması tarafından açıklanan, Flame virüsünün etkilemiş olduğu ülkeler Resim-02’deki gibidir. Bu saldırıda en çok zararı İran’ın gördüğünü gözlemleyebiliriz.
Flame hakkında teknik bilgiler nelerdir?
Resim-3
Flame’in çözülebilmiş bazı kodları Resim-02’deki gibidir.
20 farklı modülden oluşan Flame, 20 MB boyutundadır. Bu virüsün ana modülü mssecmgr.ocx isimli bir OCX (OLE Control Extension) dosyasıdır. Büyük ve küçük olmak üzere bu dosyanın iki ayrı versiyonu tespit edilmiştir. Büyük versiyon 6 MB boyutundadır. Küçük versiyon 900 KB boyutundadır. Virüs ilk bulaşmasının ardından virüs sunucularına bağlanarak, geri kalan modüllerini indirir. İndirilen dosyalar zff042.ocx, msdclr64.ocx, ve wavesup3.drv dosyalarıdır.
Hemen ardından mssecmgr Windows Kayıt Defter(Regedit)’ne, özel bir kimlik doğrulama paketi olarak kendini kaydeder.
Regedit’e eklenen kayıt yolu şu şekildedir. HKLM_SYSTEM\CurrentControlSet\Control\Lsa
Authentication Packages = mssecmgr.ocx
Regedit kaydı tamamlandıktan sonra virüs kendini güvenli kullanıcı hesabı ile çalıştırır.
MS10-061 zafiyetini kullandığında mof dosyası oluşturarak WMI araçlarını ele geçirmek için aşağıdaki kodlardan bat dosyasını oluşturur.
s1 = new ActiveXObject (“Wscript.Shell”);
s1.Run (“% SYSTEMROOT% \ \ system32 \ \ rundll32.exe msdclr64.ocx, DDEnumCallback”);
mssecmgr.ocx dosyası şuan tespit edilmiş 146 modülden oluşmaktadır.
Resim-4
Tespit edilen 146 modül Resim-04’teki gibidir. Modüller ile ilgili detayları Tablo-1’de görebilirsiniz.
Beetlejuice | Bluetooth üzerinden yayılmak için kullanılıyor. Kodlar base64 ile şifrelenmiştir. |
Microbe | Tüm multimedya cihazlarının konfigürasyonu listeleyerek en uygun kayıt cihazını kullanır. |
Infectmedia | Medya cihazlarına (USB Diskler v.s) bulaşmak için kullanılan modüldür. |
Autorun_infector | Autorun.inf dosyasını kullanarak başka ortamlara yayılmaya çalışır. |
Euphoria | .LNK dosyaları üzerinden yayılmasını sağlar. |
Limbo | Uygun haklar elde edilmişse, networkteki bilgisayarlara “HelpAssistant” hesabı ile arka kapı (backdoor) oluşturur. |
Frog | Güvenli hesaplar üzerinden bulaşmaya çalışır. Eğer yapamazsa Limbo’yu kullanır. |
Munch | Modüller ile ilgili isteklerini http protokolü üzerinden karşılar. |
Snack | Ağ arayüzlerini listeler. Bu arayüzlerdeki veri iletişimini NBNS paketleri olarak kaydeder. Toplanan veriler doğrultusunda kendini yaymak için en uygun bilgisayarı bulur. |
Boot_dll_loader | Tüm ek modüllerin listesini içeren yapılandırma modülüdür. |
Weasel | Bulaştığı bilgisayarların listesini toplar. |
Boost | Kendi programlama mantığına aykırı gelen dosyaları izler. |
Telemetry | Günlük olarak verileri loglar. |
Gator | Internet bağlantısını kontrol eder. Bağlantı olması durumunda, yeni modülleri indirir ve topladığı verileri virüs sunucularına (XMPP) aktarır. |
Security | Antivirüs ve güvenlik duvarı yazılımlarını atlatmaya çalışır. |
Bunny Dbquery Driller Headache Gadget |
Bu modüllerin amacı henüz tespit edilememiştir. |
Tablo-1
%windir%\System32 klasörüne, aşağıdaki dosyaları kopyalar.
mssecmgr.ocx
advnetcfg.ocx
msglu32.ocx
nteps32.ocx
soapr32.ocx
ccalc32.sys
boot32drv.sys
Advpck.dat
ntaps.dat
Rpcnc.dat
Toplanan verileri %windir%\temp klasörüne geçici olarak kaydeder.
~ DEB93D.tmp
~ 8C5FF6C.tmp
~ DF05AC8.tmp
~ DFD85D3.tmp
~ DFL *. Tmp
~ Dra *. Tmp
~ Fghz.tmp
~ HLV *. Tmp
~ KWI988.tmp
~ KWI989.tmp
~ Rei524.tmp
~ Rei525.tmp
~ Rf288.tmp
~ Rft374.tmp
~ TFL848.tmp
~ TFL849.tmp
~ Mso2a0.tmp
~ Mso2a1.tmp
~ Mso2a2.tmp
SSTab *. dat
Ayrıca %windir% klasörüne Ef_trace.log dosyasını oluşturur.
Flame ilk bulaşmadaki konfigürasyona bağlı olarak farklılıklar gösterebilmektedir. Konfigürasyon farkından dolayı bulaşabildiği farklı dosyalar aşağıdaki gibidir.
C:\Program Files\Common Files\Microsoft Shared\MSSecurityMgr
C:\Program Files\Common Files\Microsoft Shared\MSAudio
C:\Program Files\Common Files\Microsoft Shared\MSAuthCtrl
C:\Program Files\Common Files\Microsoft Shared\MSAPackages
C:\Program Files\Common Files\Microsoft Shared\MSSndMix
Bu dizinler aşağıdaki dosyaları barındırmaktadır.
dstrlog.dat
lmcache.dat
mscrypt.dat (veya wpgfilter.dat)
ntcache.dat
rccache.dat (veya audfilter.dat)
ssitable (veya audache)
secindex.dat
wavesup3.drv
Flame’in indirmiş olduğu dosyalar ise aşağıdaki gibidir.
svchost1ex.mof
Svchostevt.mof
frog.bat
netcfgi.ocx
authpack.ocx
~ A29.tmp
rdcvlt32.exe
to961.tmp
authcfg.dat
Wpab32.bat
ctrllist.dat
winrt32.ocx
winrt32.dll
scsec32.exe
grb9m2.bat
winconf32.ocx
watchxb.sys
sdclt32.exe
scaud32.exe
pcldrvx.ocx
mssvc32.ocx
mssui.drv
modevga.com
indsvc32.ocx
comspol32.ocx
comspol32.dll
browse32.ocx
Flame virüsü nasıl temizlenir?
Flame virüsünün bulaştığından şüphe ediyorsanız eğer, yukarıdaki dosya adlarını sisteminizde taratın. Belirtmiş olduğum kayıt defteri yolunu kontrol edin. Eşleşen kayıtlara denk gelmeniz durumunda, Flame virüsü sisteminize bulaşmış demektir.
Güvenli günler dilerim…
Bu konuyla ilgili sorularınızı Http://forum.mshowto.org alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.
Referanslar
http://www.securelist.com/en/blog/208193538/Flame_Bunny_Frog_Munch_and_BeetleJuice
http://www.securelist.com/en/blog/208193522/The_Flame_Questions_and_Answers
http://www.ntvmsnbc.com/id/25353263/
http://www.symantec.com/connect/blogs/flamer-highly-sophisticated-and-discreet-threat-targets-middle-east http://credit-n.ru/offers-zaim/creditplus-online-zaimi.html http://credit-n.ru/blog-listing.html