php安全问题

Oli*_*ton 5 php regex security preg-match

这是漫长的一天,但我似乎无法在自己的脑海中选择哪个更好,或者是否应该同时使用两者。

基本上我应该用什么来清理用户输入的值。是 htmlentities 还是 preg_match 函数?

如果该值进入 sql 查询,我将使用 mysql_real_escape_string 函数,但只有在我将其更改为准备好的语句之前,我才能删除它。

或者同时使用 htmlentities 和 preg_match 是个好主意吗?

Mik*_*ike 4

你为什么不在之前的问题中问这个?

在进行任何转义之前使用 preg_match,以确保数据符合您期望的白名单。然后使用转义进行数据库插入。这称为深度防御(即多层安全检查,以防攻击者可以突破第一层)。