检测字符串中的多个mysql_real_escape_string?

时间:2012-04-24 11:07:30

标签: php mysql-real-escape-string

我正在研究一个有多个SQL注入风险的旧系统。为了防止出现此问题,我想要转义所有$_POST$_GET数据。问题是脚本本身也逃脱了。现在我想知道是否可以检测字符串是否已被转义。

欢迎任何其他解决方案。

谢谢!

1 个答案:

答案 0 :(得分:2)

太糟糕了,无论如何你都不会受到任何保护 因为,尽管人们普遍存在错误的信念,

逃脱!=保护

事实上,你即将实施一个臭名昭着的magic_quotes功能的家庭酿造等效物,这种功能被证明是无效的,可以防止注射。

所以,你最终会对你的一些数据进行双重转义,而其他数据尽管逃逸仍然不安全(因为逃避!=安全)

不幸的是,这种“魔杖”风格的解决方案永远不会奏效 您必须重构代码,保护某些查询。这是唯一的方法。

请记住 - 转义不是保护的同义词。它只是whole set of rules

的一部分