Chinaunix

标题: 如何警止php运行shell 命令?? [打印本页]

作者: limutian    时间: 2006-10-19 09:11
标题: 如何警止php运行shell 命令??
今天查看服务器发现一个客户目录巨大,结果一看,目录下有一个111.tar.gz的包,  检查发现有一个111.php的程序
<?
   $now=date('y-m-d',time());
   chdir('/www/web/111.net/111');
   if(is_dir($now))
   {
       echo "is";
   }
   else
   {
       mkdir($now, 0777);
       chmod($now, 0777);
   }

   echo `/bin/tar -czpvf /www/web/111.net/111/$now/mysql.tgz /opt/htdocs`;
?>

担心 如果要是来个echo `/bin/rm`就麻烦了,现在负责程序的哥们还没有回来,大家先帮我一下了。
作者: ilcj    时间: 2006-10-19 09:17
echo 可以实行shell命令?
你可以控制这个目录的权限
作者: limutian    时间: 2006-10-19 09:31
php 和apache有相同的权限。可是由于
php_admin_value open_basedir "/www/web/111.net 应该都限制在他自己的目录下的。
我也很奇怪  echo `/bin/tar -czpvf /www/web/111.net/111/$now/mysql.tgz /opt/htdocs`;
可是目录下确实已经有改mysql.tgz文件,里面是服务器上所有网站的打包。
作者: Namelessxp    时间: 2006-10-19 11:18
禁用PHP的shell_exec不就行了
作者: spiceboy    时间: 2006-10-19 11:40
原帖由 Namelessxp 于 2006-10-19 11:18 发表
禁用PHP的shell_exec不就行了


是啊
作者: UIRL    时间: 2006-10-19 13:52
启用safe_mode
作者: limutian    时间: 2006-10-19 14:12
原帖由 Namelessxp 于 2006-10-19 11:18 发表
禁用PHP的shell_exec不就行了



php.ini文件里并未找到shell_exec 这行   


暂时使用safe_mode  正在做测试。。
作者: limutian    时间: 2006-10-19 14:20
Warning: shell_exec(): Cannot execute using backquotes in Safe Mode in /opt/htdocs/



十分感谢上面的各位朋友的帮忙,看来要抓紧看看文档了。谢谢 十分感谢。
作者: Namelessxp    时间: 2006-10-19 19:29
原帖由 limutian 于 2006-10-19 14:12 发表



php.ini文件里并未找到shell_exec 这行   


暂时使用safe_mode  正在做测试。。


disable_functions = exec,shell_exec.........
作者: gogo407    时间: 2006-10-20 01:27
顶,又学习了点东西
呵呵
作者: yueliangdao0608    时间: 2006-10-20 11:35
原帖由 Namelessxp 于 2006-10-19 19:29 发表


disable_functions = exec,shell_exec.........







欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2