THT DUYURU

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.

chat
Seçenekler

SQL INJECTION ve KORUNMA YOLLARI//SonOfHatred//TurkHackTeam

Son Of Hatred - ait Kullanıcı Resmi (Avatar)
Forumdan Uzaklaştırıldı
Üyelik tarihi:
10/2013
Nereden:
Manisa
Mesajlar:
229
Konular:
35
Teşekkür (Etti):
102
Teşekkür (Aldı):
23
Ticaret:
(0) %
23-10-2013 00:43
#1
SQL INJECTION ve KORUNMA YOLLARI//SonOfHatred//TurkHackTeam
SQL INJECTION

SQL Injection, bir veri tabanı güvenliği açığı olarak bilinmektedir.SQL Injection saldırısı ile yetkisiz olarak veri tabanına sızılabilmektedir.SQL Injection, günümüzde halen yaygın olarak kullanılmakta olup, birçok sitede bulunmaktadır.SQL Injection açıkları yazılan SQL kodlardan meydana gelmektedir.Yine bu kodlar dikkatsizlik ve yanlış kodlama sonucu oluşmaktadır.SQL Injection yöntemi ile bir web uygulamanın tüm veri bilgilerini çalabilir,web uygulamayı hacklenebilmektedir.SQL Injection açıkları küçük sitelerden tutun büyük bir firma sitelerine kadar tüm sistemlerde olabilmektedir.SQL Injection açığını hazır sistemlerdede arayabilirsiniz.SQL Injection tam ifadesi Structured Query Language Injection'dur.

SQL Injection,açıklarında en önemli etken, m.eta karakterlerini oluştururken birden fazla m.eta karakter yazma sebebi de,SQL Injection açıklarının oluşmasını sağlayabilmektedir.SQL Injection saldırıları genelde üye girişi alanlarında yapılmaktadır.Eğer üye giriş bilgileri doğru ise başarılı bir şekilde panele erişim sağlayacak.Üye giriş bilgileri yanlış ise,yani veri tabanından kayıt dönmediği zaman tekrardan giriş paneline yönlendirecektir.Örnek bir üye giriş kodunu inceleyelim.

Kod:
<%
CSKullaniciadi = Request.Form ("kullaniciadi")
CSSifre = Request.Form ("sifre)
Set RsLogin = SQLConn.Execute ("SELECT * FROM Uyeler WHERE
kullaniciadi = '" & CSKullaniciadi & "' AND sifre = '" & CSSifre & "'" )

If RsLogin.EOF AND RsLogin.BOF Then
Response.Redirect "/hata.asp"
Else
Session("login") = RsLogin("kadi_id")
Response.Redirect "../"
End If
%>


Üye girişi kodumuzda anlatılmak istenen ilk ve ikinci satırımızda "kullaniciadi" ve "sifre" değişkenlerin değerini almaktır.Aşağıdaki kodumuzda SQL veri tabanında bulunup bulunmadığını kontrol etmektedir.Bu sayede veri tabanında kullanıcı bulunuyor ise,başarılı bir şekilde giriş yapıyor.

Eğer bulmuyor ise,/hata.asp olarak yazılan sayfaya yönleniyor.

Kod:
Set RsLogin = SQLConn.Execute"("SELECT" FROM Uyeler WHERE kullaniciadi ='" & CSKullaniciadi & "' AND sifre = '" & CSSifre & "'" )
Yukarıdaki kodumuzda SQL veri tabanında bulunup bulunmadığını kontrol etmektedir.Bu sayede veri tabanında kullanıcı bulunuyor ise,başarılı bir şekilde giriş yapıyor.Eğer bulamıyor ise /hata.asp olarak yazılan sayfaya yönlenmektedir.Yukarıdaki üye giriş formumuzda SQL Injection denemesi yapılabilir.Bu deneme bypass olarak da adlandırılabilir.Üye giriş panellerinde deneyebileceğiniz bazı kodlar aşağıdaki gibidir.

Kod:
" 'CR' 1=1--, 'QR A=A--, "OR 0=0--, OR 0=0 "
SQL Injection saldırılarından korunmak için aşağıdaki kodlar yeterli olacaktır.

Kod:
<%
Function security (veri)
veri = Replace (veri ,"'","",1,-1,1)
veri = Replace (veri ,"&","",1,-1,1)
veri = Replace (veri ,"%","",1,-",1)
veri = Replace (veri ,"=","",1,-1,1)
veri = Replace (veri ,"AND","",1,-1,1)
veri = Replace (veri ,"/","",1,-1,1)
veri = Replace (veri ,\","",1,-1,1)
veri = Replace (veri ,"*","",1,-1,1)
veri = Replace (veri ,"!","",1,-1,1)
security = veri
End Function
%>
Yukarıdaki kodlar örnek kodlardır ve bu kodları sizler tamamen kendinize göre geliştirebilirsiniz.Böylece SQL Injection açığını açığını bir nevi önlemiş olacaksınız.Üye giriş paneliniz bu şekilde daha güvenli olacaktır.Yukarıda eklenen kodları aşağıdaki gibi sayfaya eklemeniz gerekecektir.

Kod:
<%
sKadiID = security (Request.Form ("kadiid"))
sSifreID = security (Request.Form ("sifreid"))
%>


Burada eklediğimiz kod ve değişkenleri düzenlediğimiz zaman üye giriş panelimiz aktif olacaktır.SQL Injection açıkları,bir diğer yönden site sonuna eklenen kodlarla denenmektedir.SQL Injection açığını denemek için site sonuna bazı dorklar getirerek kolayca deneme yapabilirsiniz.

Bazı SQL Injection dorkları aşağıda verilmiştir.

Kod:
"inurl:news.php?=id", "inurl:index.php?=id", "inurl:section.php?=id"
Sevgilerimle devamı gelecek...
Son Of Hatred - ait Kullanıcı Resmi (Avatar)
Forumdan Uzaklaştırıldı
Üyelik tarihi:
10/2013
Nereden:
Manisa
Mesajlar:
229
Konular:
35
Teşekkür (Etti):
102
Teşekkür (Aldı):
23
Ticaret:
(0) %
31-10-2013 22:01
#2
Deneyen oldu mu ? 1 yorum bile yok (:
BlacksGuardian - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
06/2012
Nereden:
Underground
Mesajlar:
310
Konular:
18
Teşekkür (Etti):
20
Teşekkür (Aldı):
34
Ticaret:
(0) %
01-11-2013 23:02
#3
sql açığı bu kadar basit şekilde engellenemez.
--------------------- Hükmün Yetiyorsa Sorgula

TurkSec
Son Of Hatred - ait Kullanıcı Resmi (Avatar)
Forumdan Uzaklaştırıldı
Üyelik tarihi:
10/2013
Nereden:
Manisa
Mesajlar:
229
Konular:
35
Teşekkür (Etti):
102
Teşekkür (Aldı):
23
Ticaret:
(0) %
01-11-2013 23:26
#4
Alıntı:
BlacksGuardian´isimli üyeden Alıntı Mesajı göster
sql açığı bu kadar basit şekilde engellenemez.
Varsa başka bir fikrin benimle paylaşır mısın?
BlacksGuardian - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
06/2012
Nereden:
Underground
Mesajlar:
310
Konular:
18
Teşekkür (Etti):
20
Teşekkür (Aldı):
34
Ticaret:
(0) %
02-11-2013 10:29
#5
Alıntı:
Son Of Hatred´isimli üyeden Alıntı Mesajı göster
Varsa başka bir fikrin benimle paylaşır mısın?
sql açığından korunması bu kadar kolay olsaydı dünyanın en büyük siteleri hacklenmezdi. emin ol çoğu sql inj. ile hackleniyor.firewall felan belli bir müddet engeller. direk açığı kapatmak lazım ama birçok kişi kapattım sanarken açık halen duruyor (:
--------------------- Hükmün Yetiyorsa Sorgula

TurkSec
Son Of Hatred - ait Kullanıcı Resmi (Avatar)
Forumdan Uzaklaştırıldı
Üyelik tarihi:
10/2013
Nereden:
Manisa
Mesajlar:
229
Konular:
35
Teşekkür (Etti):
102
Teşekkür (Aldı):
23
Ticaret:
(0) %
08-12-2013 21:46
#6
/Güncel

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler