有一个(丑陋的)项目我被要求通过执行特定任务来帮助完成。问题是,我无法控制站点中的其他文件,更不用说服务器配置了。我将要使用的一些数据来自这样的查询:
'SELECT * FROM table where value like "'.$unsafe.'"';
$unsafe是来自 $_POST 或 $_GET 的未转义值。我检查了服务器,是 PHP5.1.6 并且打开了 magic_quotes_gpc,因此数据正在自动转义。这个查询是否可以破解?冒号之间的 $unsafe 给我的印象是它不能被破坏,但也许我错过了一些东西。我知道 magic_quotes_gpc 已被弃用,因为它不安全,所以我担心它,不是因为应用程序安全性在任何地方都失败了,而是因为我自己的知识。
编辑:我知道 *magic_quotes_gpc* 的安全隐患,我从不在我自己的项目中使用它。我总是使用参数化查询来避免注入,但这次我被要求在朋友/客户项目中添加一段非常具体的代码,所以我无法更改已经完成的内容。我想知道是否有一个特定的值可以用来创建注射,这样我就可以向我的朋友说明为什么他应该改变它。