来改变网页的动态生成的内容,而这样就可能会导致恶意命令掌控用户的电脑和他们的网
络。PHP 执行系统命令可以使用以下几个函数:
system、exec、passthru、``、shell_exec、popen、proc_open、pcntl_exec
,我们通过在全部程序文件
中搜索这些函数,确定函数的参数是否会因为外部提交而改变,检查这些参数是否有经过安
全处理。
代码示例
例 1:
代码如下:
//ex1.php
<?php
$dir
=
$_GET
["dir"];
if
(isset(
$dir
))
{
echo
"<pre>";
system("ls -al".
$dir
);
echo
"</pre>";
}
?>
我们提交
复制代码 代码如下:
http:
// localhost/ex1.php?dir=| cat /etc/passwd
提交以后,命令变成了
代码如下:
system("ls -al | cat /etc/passwd");