İPUCU

Trojan ve Virüsler Trojan ve Virüsler Hakkında Bilgiler.

Seçenekler

Flame Hakkında

11-08-2012 15:52
#1
INFeRNaL - ait Kullanıcı Resmi (Avatar)
Özel Üye
Üyelik tarihi:
04/2009
Nereden:
Mersin
Mesajlar:
6.554
Teşekkür (Etti):
401
Teşekkür (Aldı):
1336
Konular:
3621
Ticaret:
(0) %
Geçtiğimiz hafta içerisinde siber güvenlik dünyasında yeni bir zararlı yazılım adını duyurmaya başladı. Flame ya da sKyWIper olarak adlandırılan bu yazılım, stuxnet ve duqu gibi özellikle Ortadoğu’yu hedef alan 'faili meçhul'* bir siber casusluk kitidir.
İran, Mısır gibi Ortadoğu ülkelerini hedef alan bu zararlı yazılım şimdilerde Türkiye dahil birçok ülkede de yayılmaya başlamış durumdadır.
CrySys raporuna göre bu zararlı yazılım stuxnet, duqu örneklerinde olduğu gibi “Bir hükümet ya da devlet tarafından siber savaş aktivitelerinde kullanılmak üzere önemli bir bütçe karşılığında, çok yoğun emek harcanarak hazırlanmış” olduğu hipotezi üzerinde durulmakta.
Stuxnet ve duqu zararlı yazılımlarından sonra Flame, şu ana kadar keşfedilmiş hedefe yönelik en karmaşık ve en büyük Tehdit olarak ön plana çıkmaktadır.

FLAME Nedir?


Flame, Siber Casusluk için kullanılan ve hedefe yönelik atak yapabilmek için tasarlanan, çok karmaşık bir saldırı kitidir. Hem arka kapı, hem bir Truva atı, hem de solucan gibi farklı zararlı yazılımların özelliklerini barındıran bir yapıda çalışmaktadır. Ortadoğu’da özellikle akademik kurum ve devlet sistemlerini hedef almaktadır.

Ne zaman ortaya çıktı?
Flame birçok modülden oluşan bir yapıya sahiptir. Flame’in ana modülü olan mssecmgr.ocx dosyasının oluşturma tarihi VirusTotal sitesinde var olan örneğindeki verilere göre (bdc9e04388bda8527b398a8c34667e18)

TimeStamp................: 1992:02:20 01:36:31+01:00

1992 senesini göstermekte. Flame’i oluşturan diğer ocx dosyaları ise 1992, 1994, 1995 tarihlerini göstermekte ki bu tarihler büyük ihtimalle yazılımın oluşturma tarihinin öğrenilmesini engellemek için değiştirilmiş. Yazılımın PE başlık bilgilerinde bulunan debug bilgilerinde geçen tarih bilgileri ise biraz daha yakın tarihleri göstermekte.


Flame ana modülü mssecmgr.ocx
Burada mssecmgr.ocx dosyasının oluşturma tarihi olarak 09-12-2008 olarak gözükmekte.
Ayrıca yazılım içerisinde veri tabanı olarak kullanılan SQLite’ın sürümü 3.6.22 olarak gözükmekte. SQLite veri tabanının bu sürümü haziran 2010’da çıkmıştır. Dolayısıyla bu zararlı yazılımın güncel sürümlerinin 2010 sonrası olduğu düşünülmektedir. Farklı kaynaklar da bu zararlı yazılımın 2 ila 8 yıllık olduğuna dair işaretler bulmuşlardır. Burada sorgulanması gereken, en iyi tahmin ile iki yıldır faaliyette olan zararlı yazılımın bu zamana kadar neden tespit edilemediğidir.

Nasıl yayılır?
Bu zararlının ilk yayılma yöntemi olarak, mail üzerinden oltalama saldırıları kullanılarak veya çeşitli web sitelerine zararlı kod yükleyip, bu zararlı yazılımın indirilmesini sağlanması ile gerçekleştirildiği düşünülmektedir.

Flame'in yayıldığı ülkeler
Haritadan da görülebildiği gibi Flame'in ana hedefi Ortadoğu'dur, ayrıca çeşitli kaynaklarda GMT+2 saat diliminde olan ülkelerin hedef alındığı belirtilmiştir.

Enfekte olan PC’ler yerel ağa bağlı diğer bilgisayarların ve taşınabilir bellekler ile daha fazla bilgisayarın etkilenmesine sebep olmuştur. Başka bilgisayarlara yayılmak için stuxnet tarafından da kullanılan açıklıklar kullanılmıştır.

MS10-061, Microsoft Windows Yazdırma Kuyruklayıcısı Açıklığı (CVE-2010-2729)

Autorun özelliği aktif taşınabilir diskler vasıtasıyla

MS10-046, Microsoft Windows Shell Kısayol İşleme Açıklığına ek olarak Junction Point kullanımı

Junction point, dosyalar için kullanılan kısayol özelliğinin klasörler için özelleştirilmiş halidir.Junction Point kullanılan klasörler yine klasör olarak görünmektedir, fakat içerisindeki dosyaları saklama, bir partiton’ı klasör gibi gösterme gibi bazı ek özellikler barındırmaktadır. Flame, Junction Point olarak kullanılacak klasörün içerisindeki dosyaları gizli olarak işaretlemekte ve otomatik çalıştırma özelliğini aktif hale getirmektedir. Bu klasörün içine mssecmgr.ocx adlı Flame’in ana modülünü, desktop.ini ve target.lnk adlı dosyaları kopyalamaktadır. Klasör özelliklerini değiştirmek için desktop.ini dosyası kullanılır. Normalde junction point kullanarak başka bir klasöre erişilirken burada target.lnk adlı dosyanın açılması sağlanmıştır. target.lnk dosyası ise mssecmgr.ocx dosyasına işaret eden bir kısa yoldur.


desktop.ini dosyasının içeriği
Kullanıcı Flame tarafından oluşturulmuş (bu klasörler .MSBTS" veya"~WRM3F0" gibi isimlerle adlandırılmış klasörlerdir) klasörün içeriğini görmek için bu klasörü açmaya çalıştığında otomatikman mssecmgr.ocx dosyasını çalıştırmış olacaktır.
Ayrıca C&C merkezinden komutları alacak şekilde çalışmaktadır. Flame’in bağlandığı C&C merkezlerinden bazıları şu şekildedir:


Flame Ağ trafiği analizi (DNS trafiği)


Flame'in bağlandığı C&C alan adları
C&C merkezinden komut almak ya da kaydettiği verileri göndermek için user-agent stringi de şu şekildedir:


Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Infopath.2)



Windows update çalışırken arka planda C&C ile haberleşip, işletmek için ilgili komutları almakta
Farklı kılan ne?
Flame-sKyWIper birçok farklı dosyadan oluşmakta ki bu dosyaların büyük bir çoğunluğu zararlı kod içermemekte! sKyWIper ya da Flame anti-virüs ürünlerini atlatmak için modüllerini ocx dosyaları içerisinde saklamaktadır. OCX dosyaları OLE Control eXtension adı verilen Objelerin içerisine verileri/belgeleri yerleştirmeye ve bağlamaya yarayan bir Microsoft teknolojisi olan OLE’yi barındıran dosyalardır. Bu dosyalar ise içeriğinde sıkıştırma, şifreleme gibi çeşitli kütüphaneleri barındırmaktadır. OCX dosyaları ile beraber 20MB dolaylarında olan bu zararlı yazılım sıradan zararlı yazılımlardan oldukça büyüktür. Flame’in boyutu stuxnet ya da duqu ile karşılaştırıldığı zaman arada 20 kat büyüklük farkı ortaya çıkıyor. Bu büyüklük zararlı yazılımın analizini de zorlaştırmakta! Stuxnet’in analizinin 6 ay kadar sürdüğü düşünüldüğünde Flame’in analizinin daha uzun süreceği aşikârdır.
Genelde zararlı yazılımlar sistemden gizlenmek için oldukça küçük boyutlarda yazılırlar. Flame’in ise bir nevi bu büyüklüğünün arkasına saklanarak günümüze kadar tespit edilmeden yayıldığı düşünülmektedir.
Boyutu bu kadar büyük olan bir zararlı yazılımın ilginç bir yanı ise LUA betik dili ve LUA sanal makinesini kullanması. LUA, C programlama dilini genişleterek yazılmış yüksek seviyeli, güçlü, hızlı, hafif, gömülebilir bir betik dilidir. Daha çok oyun geliştirmede (Angry birds, World of Warcraft vs.) kullanılmaktadır.



Ağ trafiğini kaydetmek, mikrofondan ses kaydı yapmak, ekran görüntüsü kaydetmek belki zararlı yazılımlar için sıradan özelliklerdir. Fakat bunların hepsini aynı anda yapmak, bu özelliklerin yanında ortamdaki Bluetooth aygıtları taramak ve bunlar hakkında bilgi toplamak, bu zararlı yazılımı siber istihbarat için kullanılan bir İsviçre çakısına çevirmektedir. Kullanıcı Skype, Siphone gibi bir VoIP uygulaması ile konuşmaya başladığında, bu konuşmayı sıkıştırıp kendi veri tabanı üzerine kaydedebilmektedir. Ayrıca instant messaging uygulamaları açıldığı zaman Flame devreye girip ekran görüntüsü alarak görüşmeyi yine sqlite veri tabanına sıkıştırılmış olarak kaydetmekte ve kaydettiği bu verileri belirli aralıklarla C&C merkezine SSL tüneli ile göndermektedir.

Modüller
Flame bir çok zararlı yazılımın aksine çok büyük boyuttadır. Boyutunun büyük olmasının nedeni farklı işleri yapan birçok modüle sahip olmasıdır. Bu modüller: zlib, libbz2, ppmd gibi sıkıştırma kütüphaneleri, şifreleme kütüphaneleridir. Haberleşme için kullanılan modüller: Web sunucu, Veri tabanı Sunucusu, SSH sunucusu ve xmpp’dir. Ayrıca içerisinde barındırdığı LUA sanal makinesi vasıtasıyla yeni betikler eklenebilmektedir. Bu betiklerle Flame’e yeni modül, yeni özellik ya da popüler tabirle “app” eklenebilmektedir. Aynen Apple App Store, Google Play’deki gibi Flame’e kolayca uygulama entegre edilebilmekte, yeni özellikler eklenebilmektedir. Flame’in bileşenlerinden bazıları Microsoft Root CA’leri tarafından dijital olarak imzalanmıştır. Yazıda dosya isimleri olarak bahsedilen, aslında farklı işleri yapan modüllerin tek dosyada birleştirilmiş halleridir. Beetlejuice, Microbe, Infectmedia, Autorun_infector, Euphoria, Limbo, Frog, Munch, Snack, Boot_dll_loader, Weasel, Boost, Telemetry, Gator, Security, Bunny, Dbquery, Driller, Headache, Gadget gibi isimler verilen bu modüllerin yaptığı işler dosya isimleri verilerek anlatılacaktır. Microsoft kullandıkları bazı eski kriptografik algoritmaların exploit edildiği ve exploit edilen kodlar vasıtasıyla yeni sertifikalar üretildiği ve sertifikaların Flame’in bileşenlerinde kullanıldığını belirtmekte.




Gadget modülü tarafından imzalananmış WuSetupV.exe'nin imza ve Certifika bilgileri


Burada geçen Gadget modülü Microsoft CA’leri tarafında imzalanmış ve “WuSetupV.ex_” adlı dosya vasıtasıyla Windows Update servisini araya girme saldırısı olarak kullanmaktadır. Bu saldırı yukarıda da bahsedildiği gbi GMT+2 zaman dilimi içerisinde aktif olmaktadır.


mssecmgr.ocx modülünün bileşenleri
mssecmgr.ocx dosyası bu zararlı yazılım için resmen dosya sistemi görevini yerine getirmektedir. İçerisinde hangi modüllerin yükleneceğini belirtir bir Index tablosu tutmaktadır. İçerisinde bulunan bir çok alt modül, betikler şifreli olarak bu dosyanın içerisinde saklanmaktadır. Ayrıca haberleşmeyi sağlamak için içerisinde HTTP sunucu, SOCKS proxy, SSH sunucu barındırmaktadır. Bahsedilen LUA sanal makinesi ve yorumlayıcısı yine ana modülün içerisinde yer almaktadır. Veri tabanı olarak SQLite3 kullanılmıştır.

Diğer modüller

msglu32.ocx
nteps32.ocx
advnetcfg.ocx
soapr32.ocx
soapr32.ocx modülü bulaştığı sistem hakkında bilgi toplayan modül olarak kullanılmaktadır. Toplanan veriler şifrelenerek kaydedilmektedir.
soapr32.ocx modülü ile yapılan işler

Sistem üzerinde çalışan servisler hakkında bilgi elde etme.

Sistem üzerindeki disk kullanım bilgileri

USB depolama aygıtlarının sistemde aktif olup olmadığını

%CommonAppData% and %ProgramFiles% klasörünün içeriğindeki dosya ve klasörleri

Outlook Express, Outlook, Microsoft Word, Internet Explorer versiyon bilgilerini öğrenme

Yerel zaman bilgisini öğrenme

Yerel bilgisayardan uzaktaki sunuculara olan bağlantıları listeleme var ise paylaşım kaynaklarını, paylaşım durumlarını kullanıcı adları ve domain isimlerini listeleme

Yerel adres defteri kayıtları listeleme var ise uzaktan erişilen adres defteri kayıtlarındaki girdileri listeleme.

Ağ komşularında bulunan bütün nesneleri listeleme

Sistemin kullanabildiği yazıcıları, yazıcı sunucularını ve domainleri listeleme

Outlook profillerinde bulunan SMTP/POP3 sunucu bilgilerini alma, hesap bilgileri ve yetkilerini listeleme

Internet geçmişinde bulunan daha önce ziyaret edilmiş URL’leri alma

DNS önbellek tablosunu okuma.

Kablosuz ağ bilgilerini toplama, hangi tip şifreleme kullandığını, kullanılan protokolü öğrenme

hosts dosyasının içeriğini okuma

IP adresi alt ağ adresi ön tanımlı ağ geçidi DHCP ayarlarını elde etme

Yönlendirme tablosunu, statik yönlendirmeleri elde etme

Kullanıcı hesabı ve gruplarını bulma. Administrator grubunda bulunan kullanıcıları listeleme

Uzak Masaüstü servisinin açık olup olmadığını, açık ise uzak masaüstü bilgilerini sorgulama, güvenlik duvarının durumunu ve açık portların listesini kontrol etme

nteps32.ocx modülü gözetleme görevini yerine getirmektedir. nteps32.ocx dosyasının içerisindeki string ifadelerin çıktısı alındığında aşağıdaki domainleri içeren bir liste ortaya çıkmakta

gawab.com
maktoob.com
hotmail.com
yahoo.com ymail.com gmail.com
rocketmail.com mail.com live.com
Kullanıcı bu sitelere girdiği an keylogger ve screenshot alma fonksiyonları devreye girip, yazışmaları kaydetmektedir. Ayrıca Flame sisteme bulaştığı anda aşağıdaki süreçleri sonlandırmaktadır.



Tahmin edileceği gibi bu iki liste birçok anti-virüs yazılımına ve çalışan uygulamaları gözetlemeye yarayan yazılımlara ait süreçlerdir.Flame bu süreçleri öldürerek sistemde çalışmaya devam edebilecektir.

msglu32.ocx modülü temel olarak dosya okuma/parse etme görevlerini yerine getirmektedir.

Microsoft Word, Excel, PowerPoint, Access, Outlook, Visio

AutoCAD

PDF

JPEG, BMP, TIFF, PNG, GIF

gibi dosyaları takip ederek bu dosyalara ait

Değiştirme, Oluşturma tarihlerini

Dosyanın adı, başlığı, oluşturan kişiyi, varsa revizyon numarasını, metin belgeler için içerdiği kelime sayısı

gibi bilgileri SQLite veri tabanına kaydetmektedir. Bunun haricinde EXIF verileri içerisinde saklanabilen ve özellikle yeni akıllı telefonlarda bulunan lokasyon verileri kullanarak, fotoğrafın çekildiği yerin koordinatlarını tutan GPS koordinat verilerini de kaydedebilmektedir.


Bir Fotoğraftaki Konum Bilgileri
Bu modüllerin haricinde yapılandırma dosyaları olarak kullanılan
boot32drv.sys
ccalc32.sys
dosyaları da şifreli olarak sistem üzerinde tutulmaktadır.


Nasıl Engellenir
Iran CERT'i bu zararlı yazılımı bulaştığı sistemden temizleyen bir araç yayınladı
Bunun haricinde Bitdefender da aynı şekilde yazılımı sistemden temizleyen aracı yayınladı
Yazı kaleme alındıktan sonra birçok anti virüs yazılım üreticisi Flame için imza üretti ve bu zararlı yazılımı tanımaya başladı. Bunların haricinde ağ üzerinden Flame’e karşı önlem alabilmek için Snort imzalarını kullanabilirsiniz.

Kod:
alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg:"ET CURRENT_EVENTS Possible SKyWIper/Win32.Flame UA"; flow:established,to_server; content:"User-Agent|3a| Mozilla/4.0 (compatible|3b| MSIE 6.0|3b| Windows NT 5.1|3b| .NET CLR 1.1.2150)|0d 0a|"; http_header; reference:url,crysys.hu/skywiper/skywiper.pdf; classtype:trojan-activity; sid:2014818; rev:5;)

Kod:
alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg:"ET CURRENT_EVENTS Possible SKyWIper/Win32.Flame POST"; flow:to_server,established; content:"POST"; http_method; nocase; content:"/wp-content/rss.php"; http_uri; content:"UNIQUE_NUMBER="; depth:14; fast_pattern; http_client_body; content:"&PASSWORD="; distance:0; http_client_body; content:"&ACTION="; distance:0; http_client_body; reference:url,blog.cuckoobox.org/2012/05/29/cuckoo-in-flame/; classtype:trojan-activity; sid:2014822; rev:5;)
Yukarıda da bahsedildiği gibi yazılımın en az 2 yıllık olduğu varsayıldığında, var olan 41 anti-virüs üreticisi içerisinde bahsedilen 2 yıllık süreç içerisinde Flame'i tespit eden herhangi bir imza olmayışı sadece anti virüsleri güncel tutarak bu zararlı yazılımdan kurtulamayacağınız anlamına geliyor.
Bu durumda yazılımın yayılmak için kullandığı açıklıkları kapatmak gerekmektedir. Bunun için aşağıdaki iki teknik makaleye göz atabilirsiniz.

Phishing
AutoRun
Bu tarz hedefe yönelik ataklardan en az şekilde etkilenmek için güvenliği bir bütün olarak ele alıp, kullanıcı bilinçlendirmesini, ağdaki cihazların/sunucuların gözetlenmesini ve zararlı ağ trafiği izlenmesini kurumsal bir süreç kapsamında hayata geçirmek gerekmektedir.
Kullanıcı İmzası


Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler

Yetkileriniz
Sizin Yeni Konu Acma Yetkiniz var yok
You may not post replies
Sizin eklenti yükleme yetkiniz yok
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodları Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı