代码执行漏洞
PHP代码执行漏洞可以将代码注入到应用中,最终到webserver去执行。该漏洞主要存在于eval()、assert()、preg_replace()、call_user_func()、array_map()以及动态函数中。
挖掘思路
- 用户能够控制函数的输入
- 存在可执行代码的危险函数
常见危险函数
eval()和assert()
eval()、assert()将输入的字符串参数当作PHP代码来执行.
举个例子:
<?php
if(isset($_GET['cmd']))
{
$cmd = $_GET['cmd'];
eval("$cmd");
#assert("$cmd");
}else
{
echo '当前没有可执行的代码!';
}
php也是可以执行系统命令的,通过**system()**函数实现:
回调函数
<