Apache降权和禁用PHP危险函数
Posted -qing-
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache降权和禁用PHP危险函数相关的知识,希望对你有一定的参考价值。
测试环境:
Windows Server 2003 + phpstudy
首先在win2003里运行phpstudy,这里注意需要选择应用系统服务模式,应用之后重启phpstudy。
打开系统服务(开始>>管理工具>>服务),出现Apache2a这个服务就成功了。
然后打开我们上传的PHP大马进行测试,正常情况下的权限为administrator。
环境测试正常,开始我们今天的学习目的。系统的权限分为system、admin和user权限。前两个都拥有较高权限,因为我们需要进行降权。
1、新建一个普通用户,命令如下。
net user www-test /hacker /add
打开服务界面,右键点击Apache2a服务,属性>>安全>>此账户,添加我们新建好的用户。这里注意密码需要重新输进去。设置完成后重启服务。
重启时会出现如下错误:
我们打开日志看一下是什么原因。我的电脑>>管理>>事件查看器>>应用程序。
由日志可以发现是error.log文件拒绝访问,缺失权限。因此我们对此文件进行权限设置,重新添加我们新建用户的权限。
这里由于是日志文件,我就直接给了完全控制权限。
重新启动Apache2a服务,成功启动。在webshell上查看当前用户,成功降为普通用户。
2、进行目录访问限制。将网站根目录WWW设置为只读权限,禁止创建文件和修改文件。
将mysql目录下的data文件夹权限只给:遍历文件夹和列出文件夹。
权限设置成功。
至此。我们的权限设置就差不多完成了,其他目录的权限设置也大同小异,大家可以自行修改。
最后,我们还希望最好能够直接K掉webshell的命令执行功能,进一步降低风险,怎么做呢?
打开php.ini文件,找到 disable_functions =,将PHP危险函数添加进去。如下:
disable_functions = phpinfo,eval,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen,popen
以上是关于Apache降权和禁用PHP危险函数的主要内容,如果未能解决你的问题,请参考以下文章