zoukankan      html  css  js  c++  java
  • 【随笔】Apache降权和禁用PHP危险函数

    测试环境:

    Windows Server 2003 + phpstudy

    首先在win2003里运行phpstudy,这里注意需要选择应用系统服务模式,应用之后重启phpstudy。

    打开系统服务(开始>>管理工具>>服务),出现Apache2a这个服务就成功了。

    然后打开我们上传的PHP大马进行测试,正常情况下的权限为administrator。

    环境测试正常,开始我们今天的学习目的。系统的权限分为system、admin和user权限。前两个都拥有较高权限,因为我们需要进行降权。

    1、新建一个普通用户,命令如下。

    net user yu 123qwe /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

    保存之后重启。再次执行命令,没有出现结果,成功完成。

    笨鸟先飞早入林,笨人勤学早成材。
    
    转载请注明出处:
    撰写人:fox-yu  http://www.cnblogs.com/fox-yu/
  • 相关阅读:
    原生开发、H5开发和混合开发的区别?
    html5:FileAPI 文件操作实战
    web前端是编程语言中更新迭代最快的
    HTTP请求过程
    CSS :placeholder-shown伪类实现Material Design占位符交互效果
    Css中bem书写规范
    全栈开发者意味着什么?
    利用canvas实现转盘抽奖
    12种开源Web安全扫描程序
    移动端适配必须掌握的基本概念和适配方案
  • 原文地址:https://www.cnblogs.com/fox-yu/p/7815066.html
Copyright © 2011-2022 走看看