最近,我想過這樣的事情:SQL注入改變返回值
$sql = "SELECT password FROM users WHERE user = '" . $_POST["user"] . "'";
$result = mysql_query($sql);
if (myql_num_rows($result) != 1) {
//Error
}
$data = mysql_fetch_array($result);
if ($data["password"] == md5($_POST["password"])) {
//Welcome
} else {
//Error
}
即使逃逸不使用參數化querys或至少,我想不出一個適當的SQL注入,使用它可以得到波谷到的Welcome
點。您需要修改返回的密碼,然後您可以將其密碼作爲md5值使用。
任何想法,如果這是可能的?
我沒有找到如何防止sql注入的方法。似乎你甚至沒有看過我的帖子。 – Zulakis
閱讀下面: http://stackoverflow.com/questions/60174/how-to-prevent-sql-injection-in-php –
@halfer是的,對不起。那是我一分鐘寫的一篇未經測試的素描。 – Zulakis