Tamam ben böylece için değil, aşağı-oy lütfen, bu bir hack tavsiye soru olmak istemiyorum. Ben bir web mağazası çalışmak ve ben bizim eski PHP sayfaları bazı kullanıcı adı SQL enjeksiyon savunmasız ve ne kadar kötü bilmek istiyorum buldum.
Biz giriş formunda POST kullanıcı girişi gömmek için bir PHP dize kullanabilirsiniz.
$uname = $_POST['username'];
$pass = md5($_POST['pass']);
$sql = "SELECT * FROM users WHERE username='$uname' AND password='$pass' AND userlevel='user'";
...
sonra ben sorguyu çalıştırın.
Şimdi, hiçbir SQL uzman değilim, ben sadece phpMyAdmin üzerinde araya ne kullanın. Ama bunun yerine kullanarak bir kullanıcı adı olmadan oturum başardı:
' OR 1 '
Ben kullanmak mysql_real_escape_string
, kullanıcı girişi kaçmak için biliyorum.
Benim soru nasıl savunmasız bu kodu ve birisi şifresini bu sayfaya giriş ve olamazdı, değil mi? Belki onlar adınızı gerek düşünürdüm, ama sadece kaba şifreyi zorlayabilir. Ama ben hiçbir SQL gurusu değilim ve bazı hileler bize karşı kullanılan olabilir merak ediyorum.
Biz MySQL kullanabilirsiniz.
Ve ben giriş doğrulama üzerinde herhangi bir ders gerekmez lütfen, ben bu kadar kötü biliyorum. Brute-zorla olamaz bu yüzden bizim sayfada zaman aşımı ve lokavt gibi şeyler, bir sürü yapıyor olmalıdır.