我有一些这样的代码对 SQL 注入开放。我们被黑了,现在我们修复了它。我只想知道输入(用户名和密码)必须是什么才能破解此代码。我的意思是即使你输入
username = something' OR 'x'='x
然后,无论用户名如何,您都可以检索表中第一个用户的密码。但是,在里面if
我们检查这个密码是否正确。我假设密码非常简单(就像 一样简单123456
),并且黑客从字典中进行了暴力破解。但是我想知道除了暴力破解密码之外,是否还有另一种方法可以使用某种注入来破解此代码。
<?php
$username=$_POST['username'];
$password=$_POST['password'];
$result=runQuery("SELECT password FROM tbl_users WHERE username='".$username."''");
$row=mysql_fetch_array($result);
if($row['password']==$password){
-- do sth... create a cookie etc..
}
else{
--go to another page...
}
?>