Dijital Pazarlama - Seo Ajansı

MySQL sistemler için sql enjeksiyonu olası tehlikeler,teknikler. - 2

Selamlar,
MySQL sistemler için sql enjeksiyonu olası tehlikeler,teknikler. - 1 adlı dökümanımın devamı niteliğinde bu dökümanada başlıyorum.
Tek karakter brute force (deneme yanılma saldırıları)
Bu yöntemimizde UNION sorgusu yapamadığımız örneğin MySQL < 4.x gibi mysql sürümlerinde ve diğer benzeri durumlarda db'den nasıl veri çekileceğini göreceğiz.
Kullanacağımız fonksiyonlar;
ascii()
substring()
Öncelikle ascii adından anlaşıldığı gibi bir değerin ascii sistemindeki karşılığını döndürür.
Substring ise ek bir sorgu çalıştırmamızı sağlar.
Örneğin bir md5 hash çekeceğiz ama dbden sadece or 1=1 gibi sorgulara yanıt veriyor ve sizde ah be burdan birşey çıkmaz diye düşünüyorsunuz...
Çok yanlış örnek bir sorgu verelim.
Unutmayın bu yöntemde sabır çok önemlidir ve bulduğunuz değerleri kaydetmek.
Örnek:

  • http://www.kurban.org/sayfa.php?id=-1'/**/OR/**/(ascii(substring((SELECT/**/password/**/FROM/**/users/**/WHERE/**/user_id=1),27,1))=97)/*

Örnek sorgu bu burda eğer substrinde dönen ifadenin 27. karakterinin ascii değeri 97 yani "a" ise sistem or 1=1 gibi tepki verecek burda 97 değişkenimizdir.
md5 hashları gibi hashlar için bu örnek o yüzden unutmayın hashlarımız hexadecimal yani 16lık sayı sisteminin karakterlerine sahip o zaman hedefimiz.

0 1 2 3 4 5 6 7 8 9 a b c d e f
48 49 50 51 52 53 54 55 56 57 97 98 99 100 101 102


Önce 48 den 57 e kadar 0 - 9 arası değerleri ardından 97-102 e kadar a-f değerlerini deneyecez.
unutmayın eğer değer doğru dönerse direk bir sonraki karakter eşlemesini yapacağız.
Ve unutmayın örnekte 27,1 olan yerde 27. karakterden itibaren 1 karakter demek oluyor yani 27. karakteri al eğer 27,2 olursa 27-28 alınır ve siz bu yöntemi yapamazsınız.
Umarım bu yöntem anlaşılmıştır bu sadece md5 hashlar için olan karakter eşlemesine örnektir siz bunu hedef sistemin kodlarına görede yapabilirsiniz.Ve aldığınız karakterleri kaydetmeyi unutmayın.
Bu yöntemin çalışması için hiç bir php veya mysql koruması işlemez. Magic_quotes_gpc gibi.
Dosya çıkarma
Bu yöntemde hedef sistemin tam çalışma dizinine ihtiyacımız var ve bunun doğrultusunda yazılabilir bir hedef lazım bize.Genelde resim dizinlerine yazabiliriz.
Bunun doğrultusunda sisteme dosya atabiliriz örneğin bir php shell.Bu yöntemin çalışması için magic_quotec_gpc değerini off durumunda olmalıdır.
Örnek:

Dizin: "/var/www/sites/www.kurban.com/public_html"
Hedef: http://www.kurban.com/sayfa.php?id=-1/**/union/**/select/**/password,user_id,'phpkodumuz'/**/from/**/users/**/**/INTO/**/OUTFILE/**/'/var/www/sites/www.kurban.com/public_html/resimlerim/xxx.php'/*

Şeklinde hedefe giriyoruz, eğer SQL sorgumuz başarılıysa.
http://www.kurban.com/resimlerim/xxx.php adresinden php kodumuza ulaşıyoruz.
Bir dökümanın daha sonuna geldik belki devam ederim seriye..

Sevgilerimizler, lulz a.k.a lulzx

Yorumunuz..

Daha yeni Daha eski