Web Siteniz Güvenlimi ? (asp)
Posted on Nisan 12th, 2008 in Programlama) by Caner AKKURT | Toplam 73 kez okunmuş.
Tagged Under : analyzer, guvenlik, sql
Başlığı görünce aklınıza bir güvenlik testi gelebilir ama bu dökümanımda bu testlere yer vermicem ama ileriki günler güvenlik testleri hazırlamayı düşünüyorum.Bu dokumanın konusu SQL Query Analyzer peki bu Analyzer ne ? anlaşıldığı gibi bişeyleri analiz edip test ediyor
Sql Query yani Sql cümleciklerini kullanarak sistemdeki döngüyü döndürmeye çalışıyoruz. 1. Kayıtı döndürüp sisteme yönetici olarak girebiliyoruz bu dökümanı google search ile inceleyebilirsiniz 1 yıl once bir guvenlik sitesine yazdığım bir döküman icerdenevar.com takipçileri için tekrar gündeme getiriyorum. Örnekleri burdan inceleyin ;
Günümüzün popüler güvenlik risk’lerinden biri olan Sql injection ve bilinçsiz web site sahiplerinin kod’ladıkları veya kod’lattırdıkları siteleri , field lara girilen ufak sql cümlecikleriyle ortaya çıkan yüksek risk’ler.Peki nasıl oluyorda ufak sql cümlecikleriyle sistem’e sızıyoruz kötü niyetli veya sisteme göz gezdirmek isteyen kullanıcımız field’lara girdiği değerli SQL sorgusunun geçerliliğini bozmadığı için sisteme sızıyor.Örnekleri bundan bir hafta önce yayınladığımız Bogazici Üniversitesi güvenlik açığı field’lara girdiğimiz ;
‘ OR 1=1 – veya ‘Or”=’ veya ‘Or”=”Or’ veya - ‘) Or (’a’=’a veya ‘OR’ 1=1 –
Örnekleri mantığınızı kullanarak çoğalta bilirsiniz , peki Sql sorgumuz bu durumda ne oluyor.
string strQry = “SELECT Count(*) FROM Users WHERE UserName=” +
txtUser.Text + ” AND Password=” + txtPassword.Text + “”;
Kullanıcı adını : cabum ve Parolayı : cabum diğe girdiğimiz strQry oluşan kod satırı ;
string strQry = “SELECT Count(*) FROM Users WHERE UserName=cabum and Password = cabum
Bu sistemin çalışma mantığı peki biz , field’lara Kullanıcı adı ve Parola yazan yere şu değeri girdiğimiz
Değer = ‘ OR 1=1 —
strQry su sekilde bize yansıyor ;
string strQry = “SELECT Count(*) FROM Users WHERE UserName= OR 1=1
SQL Injection sadece form authentication uygulamalarında ortaya çıkan bir açık değil. Kötü niyetli kullanıcımızın SQL dili, veritabanı yapısı konularındaki bilgisi ve ne kadar meraklı olduğuyla bağlı olarak dinamik olarak oluşturulan ve kullanıcıdan alınan bilgilerin kullanıldığı hemen hemen tüm sql sorgularında söz konusu olabilmektedir.
Caner AKKURT a.k.a Cabum
