码迷,mamicode.com
首页 > Web开发 > 详细

Apache降权和禁用PHP危险函数

时间:2019-05-25 12:53:16      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:function   win   str   文件   shell   文件夹权限   pst   UNC   eva   

测试环境:

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危险函数

标签:function   win   str   文件   shell   文件夹权限   pst   UNC   eva   

原文地址:https://www.cnblogs.com/-qing-/p/10921808.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!