PHP在检查之前是否已转义

时间:2016-10-29 01:07:05

标签: php

在PHP中,在检查表单是否为空之前,是否需要转义表单提交?

即。像empty($_POST['email'])这样的东西是否容易受到代码注入?

1 个答案:

答案 0 :(得分:1)

OWASP网站(https://www.owasp.org/index.php/Code_Injection)将代码注入定义为

  

代码注入是攻击类型的总称,包括注入   然后由应用程序解释/执行的代码。

PHP空函数确定变量是否为空。由于它并没有真正执行代码,所以它是安全的。

空事后你做了什么?例如,如果您计划将$ _POST ['email']用作SQL查询的一部分,或者在外部shell命令中使用它或在HTML输出中使用它,则需要相应地对其进行转义。根据用途,有逃避功能。对于SQL注入,PHP提供了mysql_real_escape_string。对于shell命令,escapeshellcmd和escapeshellarg。对于HTML输出来避免XSS攻击,PHP htmlentities。