PHP代码执行漏洞总结
ref : http://blog.csdn.net/kuangmang/article/details/27170309
ref : http://blog.csdn.net/fuckcat_2333/article/details/52125951
1 代码执行函数
php中可以执行代码的函数有: eval()、assert()、``、system()、exec()、shell_exec()、passthru()、 pcntl_exec()
这些函数中的参数(部分)可控时,则可能命令注入漏洞。通常会使用escapeshellarg对参数进行处理,但在低版本的PHP库函数中该函数存在漏洞(原因:Windows上未对反斜杠进行过滤),需要注意。
2 文件包含代码注入
当文件包含函数(include、include_once、require、require_once)中包含输入变量时,可能导致代码注射。
条件:allow_url_include=On,PHP Version>=5.2.0
demo code: