PHP 在 mysqli where 子句 [Havij] 中使用 %


PHP Using % inside mysqli where clause [Havij]

所以我的网站对SQL注入开放,并使用Havij被利用。我的问题是对于该程序,您可以以 getVariable=%inject_Here% 的格式做一个占位符。

现在我知道在类似的语句中您可以使用%作为通配符。

% 符号在等号比较中有什么意义吗?或者使用这种结构,它实际上是在查找字符串"%inject_Here%"。

我只是想了解格式以帮助进一步防止注射。

有关该主题的任何信息将不胜感激!

您可以将字符串转换为其十六进制值。这是一个关于在 sql http://www.codeproject.com/Articles/610089/SQL-Servers-FORMAT-function#13 中执行此操作的网站。每种语言都有一个易于使用的方法来将字符串与十六进制之间的字符串相互转换。这将使您能够在字符串中放置所需的任何字符。

如果您实际上以数学类型的方式使用百分比,则将它们存储在 sql 字符串中是不合适的。您应该以十进制格式存储它。十进制 (p,s) 示例 十进制(5,2)