Kia*_*ada 2 php mysql sql ajax code-injection
我已经阅读了各种来源,但我不确定如何将它们应用到我的代码中.我想知道是否有人能给我一个快速的手?一旦我被告知如何在我的代码中执行一次,我想能够接受它我认为!这是我在网上找到的一个AJAX自动完成,虽然我看到由于'%$ queryString%'或其他原因它容易受到SQL注入的影响?任何帮助真的很感激!
if ( isset( $_POST['queryString'] ) )
{
$queryString = $_POST['queryString'];
if ( strlen( $queryString ) > 0 )
{
$query = "SELECT game_title, game_id FROM games WHERE game_title LIKE '%$queryString%' || alt LIKE '%$queryString%' LIMIT 10";
$result = mysql_query( $query, $db ) or die( "There is an error in database please contact support@laglessfrag.com" );
while ( $row = mysql_fetch_array( $result ) )
{
$game_id = $row['game_id'];
echo '<li onClick="fill(\'' . $row['game_title'] . '\',' . $game_id . ');">' . $row['game_title'] . '</li>';
}
}
}
Run Code Online (Sandbox Code Playgroud)
注入漏洞是您将用户提供的数据直接传递给查询而不对其进行清理.特别是,这条线存在问题:
$queryString = $_POST['queryString'];
Run Code Online (Sandbox Code Playgroud)
如果您使用的功能mysql_real_escape_string()周围$_POST['queryString'],这将阻止用户能够插入自己的代码.
$queryString = mysql_real_escape_string($_POST['queryString']);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
487 次 |
| 最近记录: |