function clean( $value ) {
if(function_exists( "mysql_real_escape_string" ) ) {
if( get_magic_quotes_gpc() ) { $value = stripslashes( $value ); }
$value = mysql_real_escape_string( $value );
} else {
if( !get_magic_quotes_gpc() ) { $value = addslashes( $value ); }
}
$value = strip_tags($value);
$value = htmlentities( $value, ENT_QUOTES, 'utf-8' );
$value = htmlspecialchars( $value , ENT_QUOTES , 'utf-8' );
return $value;
}
if(isset($_GET))
{
foreach($_GET as $k=>$v)
{
echo clean($v);
}
}
当我尝试
http://localhost/test.php?act=add_credit&rid=975&total=%22%20onmouseover%3dprompt%28929649%29%20bad%3d%
我明白
add_credit975" onmouseover=prompt(929649) bad=%
这意味着onmouseover=prompt(929649)
陷入低谷...听起来很愚蠢,我无法直接访问该网站...有人只是给了我一个网页并要求我确保其安全。
并且使用 pdo ,prepared statements , sqli 和 ..... 是没有问题的