【渗透测试小白系列】之PhpStudy“后门”利用复现、修复及使用脚本快速复现

(本文仅为平时学习记录,如有错误请大佬指出,若是本文能帮到你那我也是很开心啦)php

 

该复现参考网络中的文章,该漏洞复现仅仅是为了学习交流,严禁非法使用!!! python

 

1、事件背景git

  北京时间9月20日,杭州公安发布《杭州警方通报打击涉网违法犯罪暨‘净网2019’专项行动战果》一文,文章曝光了国内知名PHP调试环境程序集成包“PhpStudy软件”遭到黑客篡改并植入“后门”。截至案发,近百万PHP用户中超过67万用户已被黑客控制,并大肆盗取帐号密码、聊天记录、设备码类等敏感数据多达10万多组,非法牟利600多万元。github

  • 漏洞:程序包自带的PHP的php_xmlrpc.dll模块中有隐藏后门web

  • php.ini中必需要引用该模块,这样才能去复现该漏洞,若开启了xmlrpc功能,php就会加载这个php_xmlrpc.dll动态连接库文件,其中的恶意代码就会被触发浏览器

    • 查看是否引用该模块:
      • 方法1:经过php.ini配置文件查看,位置D:\phpStudy\PHPTutorial\php\php-5.4.45\ext

      • 方法2:经过phpinfo查看

  • 影响版本:phpstudy 2016(php5.4/5.2) phpstudy 2018(php5.4/5.2)

 

2、PhpStudy“后门”利用复现安全

攻击者:Windows 10系统服务器

靶机:Windows 7虚拟机
网络

1.查看攻击者与靶机的连通性函数

2.在靶机中下载带有后门的PhpStudy 2018软件,打开PhpStudy软件,在D:\phpStudy\PHPTutorial\php\php-5.4.45\ext

目录中使用记事本打开php_xmlrpc.dll,搜索eval关键词,查看植入的后门

3.打开PhpStudy  2018,切换到有后门的版本,并启动Apache和MySQL服务,攻击者在浏览器中访问靶机的IP,查看是否能启动WEB服务器

4.开启代理服务器,使用BP拦截浏览器的请求包,将拦截下来的数据发送到到Repeater模块重发),使用Ctrl+R或者点击Action --> Send to Repater

5.修改请求包,将Accept-Encding(浏览器可解析的编码方式):gzip,deflate逗号后面的空格删除,而后在deflate后面增长一个空格

6.再添加一项:Accept-Charset(规定服务器处理表单数据所接受的字符集):,后跟要执行的命令,即恶意代码,最后提交该请求包,查看响应包

  • 恶意代码须要通过Base64转码,能够使用如下方法:

    • 在火狐浏览器中:

    • 在BP工具中,打开Decoder解码和编码)模块:
      • 注:代码后面必定要加;!!!如:system(‘ipconfig’);

  • 下图能够看到,在响应包中咱们能够看到咱们想要的信息,复现成功

 

仅仅上面几个操做就能够获取到想要的信息,因而可知,重视网络信息安全是多么的重要,因此榴莲酱在这里建议你们:

1.不要随意下载,接收和运行不明来源的文件,尽可能到官网下载软件

2.密码和用户名最好不要使用同一个

 

3、修复方法

1.在官网中下载最新的PhpStudy

2.将PhpStudy中php5.4和php5.2里面的php_xmlrpc.dll替换为官方的文件

3.使用phpstudy安全自检修复程序2.0

  • 这里显示环境已正常,就说明已经修复成功了,再次查看php_xmlrpc.dll文件,发现已经没有后门了

 

4、使用脚本快速复现

(这里须要提早在靶机中安装Python3,请参考https://blog.csdn.net/qq_35844043/article/details/81437047,十分详细感谢!!!)

1.在GitHub中找到PHPStudy_BackDoor_Exp,点击Clone or download,复制其中的连接

2.在想要安装PHPStudy_BackDoor_Exp路径目录的空白处右键使用Git下载该脚本

  • Git软件须要提早下载好:)

git clone https://github.com/cream492/PHPStudy_BackDoor_Exp.git 下载脚本

3.把下载好的PHPStudy_BackDoor_Exp文件夹拷贝到靶机中,并在PHPStudy_BackDoor_Exp文件夹中开启dos命令窗口

python phpstudy_backdoor.py  运行脚本

  • 命令执行出现错误,显示没有request模块
  • 解决方法:
pip3 install requests  下载requests模块

  • 再次运行脚本,开启脚本成功

4.根据提示,输入目标主机(即出现漏洞的PhpStudy中web服务器地址),以及要执行的命令

  • 须要开启PhpStudy中的Apache和MySQL服务

  • 根据上图的提示所示,若是要执行os命令,命令必须是php函数,使用system('');格式

相关文章
相关标签/搜索