Php 绕过mysql\u real\u escape\u字符串的保护

Php 绕过mysql\u real\u escape\u字符串的保护,php,mysql,sql-injection,Php,Mysql,Sql Injection,有人向我挑战,要我注入他的代码。他说标题中的PHP函数应该足以满足这种情况 $var = 'my malevolent input will be in here'; $var = mysql_real_escape_string($var); $sql = "SELECT * FROM `users` WHERE `id` = '$var'"; mysql_query($sql); 我似乎无法绕过单引号转义。我应该使用什么作为$var的值?我能用点什么吗 谢谢,一如既往尽管在某些条件下某

有人向我挑战,要我注入他的代码。他说标题中的PHP函数应该足以满足这种情况

$var = 'my malevolent input will be in here';
$var = mysql_real_escape_string($var);

$sql = "SELECT * FROM `users` WHERE `id` = '$var'";

mysql_query($sql);
我似乎无法绕过单引号转义。我应该使用什么作为$var的值?我能用点什么吗


谢谢,一如既往

尽管在某些条件下某些服务器版本中可能存在秘密漏洞,就我所知,以这种方式使用mysql\u real\u escape\u字符串通常被认为是安全的

虽然在某些条件下,某些服务器版本可能会有秘密的漏洞利用,但据我所知,以这种方式使用mysql\u real\u escape\u字符串通常被认为是安全的

否,除非使用未正确设置字符编码,否则使用对任何输入都是安全的。

否,除非使用未正确设置字符编码,否则使用对任何输入都是安全的。

您的代码中有错误:

$sql=从'users'中选择*,其中'id'='$var'

应该是

$sql=从“用户”中选择*,其中“id=”。$var

如果您不确定id是整数还是字符串

如果确定id始终为整数,则:

$sql=从'users'中选择*,其中'id'=.intval$var


使用mysql\u real\u escape\u string,您会很安全^_^

代码中有错误:

$sql=从'users'中选择*,其中'id'='$var'

应该是

$sql=从“用户”中选择*,其中“id=”。$var

如果您不确定id是整数还是字符串

如果确定id始终为整数,则:

$sql=从'users'中选择*,其中'id'=.intval$var


使用mysql\u real\u escape\u string,您会很安全^_^

你是否知道一个错误设置的角色在你头顶上的特定利用例子的链接?不用挖,只要curious@Pekka:有一个例子。你是否碰巧知道一个错误设置的字符在你头顶上的特定利用例子的链接?不用挖,只要curious@Pekka:有一个例子。可疑的挑战。“他不是也向你挑战闯入诺克斯堡吗?”我的邻居上校向我挑战,要我在他去度假之前闯入他的公寓。有什么工具或想法吗可能重复:可疑挑战。“他不是也向你挑战闯入诺克斯堡吗?”我的邻居上校向我挑战,要我在他去度假之前闯入他的公寓。有什么工具或想法吗可能重复:oops。哈哈在浏览时看到了奇怪的代码并发布了。。哎呀。哈哈在浏览时看到了奇怪的代码并发布了。。