19 Aralık 2007 Çarşamba

XSS Mail Hacking ve Güvenlik



Nedir bu XSS? XSS (Cross Site Scripting) Microsoft'un Hotmail'i eski sürümünü kullanırken birçok kullanıcının başını yakan şey. Sadece Hotmail veya Msn değil, Yahoo, Mynet ve diğer birçok popüler mail servisi için geçerli bir tehlike. Bir yıl öncesine kadar oldukça popüler olan bu yöntemle e-mail hack işlemleri, mail servislerinin açıklarını kapatmasıyla popülersitesini yitirdi diyebiliriz. Ancak hala açıklar bulunmakta. Bu açıklara hergün bir yenisi daha eklenecek. Çünkü servisler ne kadar çok gelişirse o kadar çok karmaşıklaşır ve bu da beraberinde açıkları getirir.


XSS'in çalışma mantığı çok basit aslında. Bir web sitesinin adminisiniz veya e-mail hesabınıza girdiniz. Size yollanan bir e-maili açıyorsunuz. Masum görünen bir link var. Üstelik bu link arkadaşınızın adresinden de geliyor olabilir. Hiç çekinmeden tıklıyorsunuz. Açtığınız sayfada alakasız yazılar veya bir resim. Anlam veremeden çıkıyorsunuz. Oysa atı alan üsküdar'ı çoktan geçti :). Girmeniz için verilen safyada "iframe" kodları altına saklanmış başka bir sayfa daha açılmıştı ve bu sayfanın adres satırında o anki e-mail cookie'lerinizi alan kodlar çalıştırılmıştı:

... script dokument.cookie(); /script ...


Script bu cookileri, kodları alan ve işleyen sonra istenilen yere gönderilmesi için kodlanmış PHP scriptine çoktan gönderdi bile. Cookieleri alan PHP scripti bunları istediğimiz ve sniffer dediğimiz bir web adresine veya e-mail adresine gönderebilir orası bu işi yapana kalmış. Alınan cookieler internette gezinirken dosyaların geçici olarak depolandığı Document Settings/Temporary Internet Files içindeki cookie dosyası içine gömülür, kaydedilir ve çıkılır. Sonra cookieler hangi mail servisine aitse o servisin mail sayfasına girilir. Örneğin yahoo'dan alınmış bir cookie için http://mail.yahoo.com adresine girilir. Cookieler mail gönderip script kodlarını çalıştırdığımız kişiye ait olduğu için, yahoo mail server bizi o kişi gibi görecek ve mail hesabına girmemeiz sağlayacaktır. Cookie için bir cookie editor kullanabilirsiniz. Bunlardan en yaygın olanı Proxomitron denilen program. Aynı şeyler her türlü websitesinde uygulanabilir. İşin mantığı yetkiliye ait cookieleri kendi cookie dosyalarıma eklemek ve siteye girip o kişiymiş gibi servisleri aldatmak.

Bir sayfada XSS var mı yok mu anlamak için basit bir javascript kodu çalıştırılır. Mesela javascriptin alert komutunu çalıştırırsak karşımıza bir message box çıkar. Örneğin:

script alert('Emre'); /script


Bu kodu XSS açığı olup olmadığını öğrenmek istediğiniz herhangi bir sayfada adres satırına yazılarak çalıştırılır ve karşınıza bir message box çıkarsa o sayfada açık var demektir.

19.12.2007 tarihli güncel XSS açıklarından bazıları şöyle:

URL: http://rds.yahoo.com/_ylt=A0geu.E6d1BGaFABNDZXNyoA/SIG=118ujf2dq/EXP=1179764922/**http://uber0n.dark
illusion.org/xsspage.htm?%22%3E%3C/a%3E%3CscRipT%3Ealert(http://Emrepisirici.blogspot.com)%3C/scRipT%3E

URL: http://it.eurekasa.yahoo.net/ITALFRANCE_S.R.L.-Rozzano-agenzia_7516?idAnnuncio=%22%3E%3Cscript%3Eale
rt%28%2FEmre%2F%29%3C%2Fscript%3E

URL: http://hotmail.images.services.spaces.live.com/UploadImage.aspx?Img_ReturnPostUrl=">

Karşınıza messageboxlar çıkıyorsa o sitede script çalıştırılıyor demektir.