检测字符串中的多个mysql_real_escape_string


Detect multiple mysql_real_escape_string in string?

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

也欢迎任何其他解决方案。

谢谢!

太糟糕了,无论如何你都不会得到任何保护。
因为,尽管 php 人员普遍不相信,

逃逸!=保护

事实上,您即将实现一个臭名昭著的magic_quotes功能的自制等价物,该功能被证明在防止注射方面效率低下。

因此,您最终会得到一些数据双重转义,而其他数据尽管转义仍然不安全(因为转义!=安全)

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

请记住 - 逃逸不是保护的同义词。它只是整套规则的一部分