26 Temmuz 2013 Cuma

Blind Sql Injection Tekniği Nedir, Blind Injection

Bu yazımda tehditkar bir güvenlik açığı olan Sql injection tekniklerinden Blind Sql injection açığına değineceğim. Klasik tüm sql injection açıklarında olduğu gibi bir get değerine girilen integer sonucunda sunucu bu sorguya bir cevap verir. Bazı php yapılandırmaları bu sorguya direk table name ile döner ve bu şekilde injection methodu çok basit ve yaygındır. Ancak blind sql injection başlangıçta kalsik bir inject işlemi olsada sonuç olarak çok farklı bir yöntemdir. Bu saldırı yönteminde sunucu iyi optimize edilmiş ve sorguya tablo isimleri veya database isimleri ile cevap vermesede tablo veya database isim uzunluğu tespit edilir. Ve veritabanın da bulunan tablo ve data ların harf harf deneme yanılma yöntemiyle doğruluğu test edilerek datalara ulaşılır. çok yorucu ve uzun bir işlem olan bu injection yöntemi hacker lar tarafından zaman alması hasebiyle pek tutulmamıştır. Ancak başka çare kalmayınca mecburen başvurulan bir tekniktir.

Peki bu tür injection açıklarına nasıl müdahale etmeliyiz. ilk olarak GET ile aldığınız verilere hakim olmalısınız. GET ile aldığınız veri yalnızca numeric bir veri ise is_numeric fonksiyonu ile kontrol etmelisiniz. title gibi değerler alıyorsanız. bir injection sınıfı oluşturmalısınız. bu sınıfta mysql query komutlarını disable etmelisiniz. Bu tür bir get koruma yöntemi için. yakında bir Sql injection kontrol sınıfı yazmayı düşünüyorum. 

Hepinize az Injection lu günler dilerim...

Hiç yorum yok:

Yorum Gönder