Saturday, January 23, 2010

Kod Adı Aurora (MS10-002)

Cin ve Google'i karsı kaşıya getiren ve Internet Explorer'ı hedef halan exploit'e bugün Microsoft'tan yama geldi. Exploit’in meydana geliş sebebi, IE'nin MSHTML.DLL!IHTMLEventObj4 ara yüzündeki bir yanlış hafıza alanina erişmesi olarak tespit edildi.

Exploit’in çalışma mantığı şu şekilde; İlk önce createEventObject ile bir event object yaratılıyor ve sonra free ediliyor arkasından bu object tekrar kullanılmaya çalışıldığında, IE free algoritmasındaki bozukluk yüzünden tekrar ilgili objeyi kullanmak istiyor ve rastgele bir hafıza alanını referans alıyor ve crash oluyor.

Ortada herhangi bir heap yada stack tabanlı bir hafıza taşması yok ancak , heap'te crash olduğu nokta çok kritik. Alttaki resme bakiniz:

Buradan sonrada, daha önce Zemana Blog'da bahsettiğimiz HeapSpray tekniği ile exploit ediliyor.
Exploit, daha sonra targetted attak dediğimiz, yani saldırının adresinin belli olması, avantajını kullanarak Google gibi hedef firmalar üzerinde kullanıldı. Targetted attack'ta zero-day exploit ve barındırdığı trojan public olmadığı için 1-2 hafta gibi bir zaman AntiVirus şirketlerine ulaşmıyor ve güvenlik sağlanamıyor. Ancak su dakikalarda public olmuştur, bunun bir iyi yani birde kotu yani var;

Kötü yanı: Script kiddie'lerin eline geçip son kullanıcılara karşı saldırı gerçekleştirilebilir.
İyi yanı: Exploit ve payload , AV ve IDS veritabanlarında yerini almıştır.

Targeted Attack, her ne kadar bireylerin kolay kolay karsılaşmayacağı bir saldırı türü olsa da, büyük firmalar için çok yüksek tehlike oluşturuyor, çünkü kullandıkları güvenlik sistemlerinde bunu anlayıp durdurabilecek bir güvenlik çemberleri yok.

Peki Aurora neden IE8 üzerinde etkili olmadı, yada IE7 üzerinde kısmi bir etki yaptı?
Bunun sebebi, IE8'in MSHTML.DLL'inin etkilenmemesi değil, oda etkileniyor ancak donanım tabanlı DEP koruması, IE8 için varsayılan ayarlarda etkindir, eğer DEP'i kapatırsanız exploit IE8'dede çalışır.

IE7 de ise, programın kırılma noktasında, EAX değerinin stackta çok yüksek olması ve ASLR'ninde durumu her seferde daha da karıştırması, tabi buna rağmen IE7 içinde exploit yazıldı, ancak bizim denemelerimizde 3-4 seferde 1 defa tam çalışıyor. Hatta VUPEN Security, DEP korumalı IE8 içinde çalışan exploit kodu yazdıklarını duyurdu, eğer gerçekten doğru ise, Microsoft'un HeapSpray için gerçekten bir ek koruma yapması gerekiyor.

AntiLogger, bu saldırı karşısında, nasıl tepki veriyor?
AntiLogger, exploit'in kendisini tespit edemese de payload çalışmaya basladigi anda, Sistem başlangıcı uyarısı veriyor ve zaten bir taraftan IE crash oluyor, yeter ki bu gibi durumlarda alarm'a yanlış yanıt vermeyin.!

Eğer exploit herhangi bir payload çıkarmadan tüm kirli islerini IE içinden yapıyor olsaydı, maalesef bu durumda, AntiLogger eylemin IE'den geldiğini anlayacağı için, alarm göstermeden izin verecekti, ancak şimdiye kadar hiç bir exploitte spy işlemlerinin exploit içinde yapılmaya çalışıldığı durumlarla karşılaşmadık. Çünkü böyle bir hardcode shellcode'i hem yazmak çok zor hem de boyutları sebebiyle exploitlerde kullanilabilmesi, ASLR, DEP ve buna benzer sezgisel korumalar varken, bir benzeri üzerinde tabi çalışmıyoruz, ancak yakında kullanıma sunacağımız AntiLogger 2.0'da, özellikle browser'lar tarafından exploit edilme durumları için yeni bir modül geliştirdik.

Çoğu zaman bu tip zero-day vakalarda, başka bir browser kullanın yada JavaScript'i kapatın gibi yorumlar oluyor, hatta bu yorumları devletler yapıyor, bunları da değerlendirmek istedik.
Evet, Aurora, JavaScript kütüphanesindeki fonksiyon yüzünden oluştuğu için, bu exploitten JavaScript'i devre dışı bırakarak kurtulabilirsiniz, ancak bir diğer zero-day browser'in html taglarini parse etmesi sırasında oluşabilir. Örneğin (HTML Tag) Memory Corruption (MS06-013) veya wmf,jpeg gibi resim kütüphanelerinde olabilir.Bu durumda, Windows üzerinde çalışan Firefox gibi browserlarda GDI.DLL'i kullandığı için etkileneceklerdir.

Peki bu saldırılardan Firefox, Opera , Chrome yada Linux çok az etkileniyor, onların koruması daha mi iyi? Kesinlikle HAYIR, sadece popüler değiller ve hackerlar kullanım payı yüksek olan platformlar için zararlı üretiyorlar.
Eger bir gün, bu platformların pazar payı MS’tan yüksek olursa, emin olun bu platformlar için, çok daha fazla exploit çıkacaktır.

Son not: Bu exploit IE tabanlı Avant gibi browserlar üzerinde de etkili olacaktır, çünkü onlarda IE tabanlı oldukları için, MSHTML.DLL!IHTMLEventObj4 ara yüzünü kullanıyorlar.




No comments:

Post a Comment