PhpStudy-PHP5.4.45后门漏洞应用程序(C++/base64/winhttp)

news2024/11/28 20:42:18

PhpStudy-PHP5.4.45后门漏洞应用程序(C++/base64/winhttp)

  • 前言
  • 引言(时间回到多年前)
  • PhpShellCmd.exe
    • 使用介绍:
      • (1)输入网址检测是否存在PHP/5.4.45
      • (2)whoami
      • (3)net user查看账户
    • 调用库
  • 资源链接(含源码)

前言

  翻到了多年前写的一篇文章,那时我成功渗透了一台钓鱼网站,想着要不凭此进入网络安全领域吧,奈何当时关于白帽子的“渗透测试”行为有很多争议,即未经授权的渗透测试就是犯罪,有些免费帮企业找漏洞的白帽子被抓了,要想在这一行有所精进就必须经过大量的实战,而像我这种技术水平不高的“初学者”最容易落下把柄了,哈哈最后经过深思熟虑还是脱离这一领域回归老本行了。

引言(时间回到多年前)

  首先声明一下我是个初学者。
  事情的起因是这样的,在假期的时候,有个学校qq群里,有人发了个链接,说是学校要求必须打开,我瞬间感到了不对劲。
  因为我在小白的时候,也是有个群,有人在里面发了个链接说是校领导要求的有任务,当时太年轻,我打开了链接,是个QQ登录界面,也没多想,就登了进去。而且还问同学看没看到,同学也登了,结果里面什么也没有,是个空界面。心想会不会是因为网站有啥问题所以登不上去,唉,还是太年轻。到了中午发现同学的账号被盗了之后才明白这是个钓鱼网站。从那时起我就发奋学习有关网络渗透的一些知识,当然那时离现在也就不到两年的时间,当时也是没有太多时间来学习渗透,只是渐渐的对这一方面有了些了解,在网上找了一些大佬的教学视频进行了自学。到现在算是入了门吧,不再是小白一个了。
  回到开始,这个链接看域名信息很明显是个假域名,冒充腾讯的域名,并且qq登录界面太假,连个忘记密码都没有,只有两个输入框。
  我立马通过https://www.shodan.io对其进行了扫描,发现其ip是香港的,对其进行了大量的扫描都没有发现一些很明显的漏洞,可能我太菜了,毕竟我也是刚入门的小白,不过我在扫描过程中发现它是windows电脑,使用的PHP是5.4.45版本的,联想到之前好像有个关于这个漏洞,我上网查了一下,找到了它是PHPstudy的一个后门漏洞,在网上有关于此漏洞的详细介绍及利用。

https://www.cnblogs.com/0daybug/p/11647075.html
这是PHP5.4.45漏洞后门的复现
https://blog.csdn.net/qq_45521281/article/details/105926151
上方为更加详细的介绍

这个网站只是可能存在这个漏洞,我们还是需要试验一下的,根据上面链接的解释成功了。

下面是后门影响的版本:
phpStudy2016和phpStudy2018自带的php-5.2.17、php-5.4.45
phpStudy2016路径
php\php-5.2.17\ext\php_xmlrpc.dll
php\php-5.4.45\ext\php_xmlrpc.dll
phpStudy2018路径
PHPTutorial\php\php-5.2.17\ext\php_xmlrpc.dll
PHPTutorial\php\php-5.4.45\ext\php_xmlrpc.dl

  这下我就发现这个后门直接是管理员的账号,自己接着创了个新账号,远程连接了一下,成功进入对方后台。具体攻击细节就不展示了。
  根据连接,需要进行抓包,还要base64编码cmd命令,每次都得这样太麻烦,当然上面给出了一个用python编写的poc,如果电脑没有python的话还得下,而且我觉得使用这个不太方便。
  正好最近在学习mfc,我就在想能不能使用mfc做一个专门针对此漏洞的简易的渗透工具。于是我用了差不多一个星期的时间做出了这个程序。先在本地搭建了一个有此漏洞的PHPstudy,进行工具测试。

PhpShellCmd.exe

使用介绍:

(1)输入网址检测是否存在PHP/5.4.45

  在地址栏输入网站地址,这里是本地搭建的地址,点击检测,可以看到响应头,在这里的server中有win32和PHP/5.4.45说明使用的windows电脑,可能用的PHPstudy搭建的,版本又是PHP/5.4.45很有可能存在PHPstudy后门漏洞。
在这里插入图片描述

(2)whoami

  当地址栏有地址后,在cmd栏输入cmd命令就能返回对方电脑的一些结果如下,先查看本地账号是什么。在cmd输入whoami,点击攻击,就返回对方电脑账号了。在第一行所示,因为本地搭建,我将账号遮掩了一下。
在这里插入图片描述

(3)net user查看账户

  如果是管理员账号,我们就可以进行net user admin 123 add/等进行添加账号操作,进行远程连接了。
下面我们可以查看本地用户有哪些,如下
在这里插入图片描述

调用库

实际上是使用C++实现的,攻击原理和python是一样的,这里用C++将其实现了

使用VS2013进行的
调用的库有base64 winhttp组件

下方引入的库主要是用于base64的类的编码的实现

实际的发送数据包等是通过winhttp组件进行的,可以更改数据包中的各个数据
在这里插入图片描述

注意这里的base64是使用程序直接编写的,直接引入的类如下,相关文件
在这里插入图片描述

资源链接(含源码)

https://github.com/zhaocaijinbao-max/PhpStudyShell
release下的exe可以直接下载使用
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2189365.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

新闻推荐系统:Spring Boot与大数据

4系统概要设计 4.1概述 本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示: 图4-1系统工作原理…

IP协议报文

一.IP协议报头结构 二.IP协议报头拆解 1.4位版本 实际上只有两个取值,分别是4和6,4代表的是IPv4,6代表的是IPv6。 2.4位首部长度 IP协议报头的长度也是边长的,单位是*4,这里表示的大小为0~15,当数值为1…

昇思学习打卡营第31天|深度解密 CycleGAN 图像风格迁移:从草图到线稿的无缝转化

1. 简介 图像风格迁移是计算机视觉领域中的一个热门研究方向,其中 CycleGAN (循环对抗生成网络) 在无监督领域取得了显著的突破。与传统需要成对训练数据的模型如 Pix2Pix 不同,CycleGAN 不需要严格的成对数据,只需两类图片域数据&#xff0c…

【redis学习篇1】redis基本常用命令

目录 redis存储数据的模式 常用基本命令 一、set 二、keys pattern keys 字符串当中携带问号 keys 字符串当中携带*号 keys 【^字母】 keys * 三、exists 四、del 五、expire 5.1 ttl命令 5.2key删除策略 5.2.1惰性删除 5.2.2定期删除 六、type key的数据类型…

数据结构--线性表(顺序结构)

1.线性表的定义和基本操作 1.1线性表以及基本逻辑 1.1.1线性表 (1)n(>0)个数据元素的有限序列,记作(a1,a2,...an),其中ai是线性表中的数据元素,n是表的长度。 (2)…

【RabbitMQ】RabbitMQ学习

1. 发送流程 生产者 - connection - channel - 交换机 - 对列- channel - connection - 消费者 2. 工作模式 2.1. 简单模式(点对点) 一个消费者一个生产者,直接进行通信。 2.2. 工作对列模式 多个消费者共同消费消息对列中的消息。同一条…

10其他内容补充

如何生成随机数原理详细分析 文章目录 如何生成随机数原理详细分析原理如果使用相同的随机数种子,得到的随机数序列会是相同的吗示例为什么需要随机数种子 动态内存管理前言malloc函数calloc函数realloc函数free函数 - 避免内存泄漏常见的动态内存错误 原理 说到如何生成一个随…

实现TCP Connect的断线重连机制:策略与实践

🍑个人主页:Jupiter. 🚀 所属专栏:Linux从入门到进阶 欢迎大家点赞收藏评论😊 断线重连机制,它成为确保应用在网络不稳定情况下仍能持续提供服务的关键技术之一。本文旨在深入探讨TCP(传输控制协…

浅聊前后端分离开发和前后端不分离开发模式

1.先聊聊Web开发的开发框架Spring MVC 首先要知道,Spring MVC是Web开发领域的一个知名框架,可以开发基于请求-响应模式的Web应用。而Web开发的本质是遵循HTTP(Hyper Text Transfer Protocol: 超文本传输协议)协议【发请求&#xf…

仿RabbitMQ实现消息队列客户端

文章目录 客⼾端模块实现订阅者模块信道管理模块异步⼯作线程实现连接管理模块生产者客户端消费者客户端 客⼾端模块实现 在RabbitMQ中,提供服务的是信道,因此在客⼾端的实现中,弱化了Client客⼾端的概念,也就是说在RabbitMQ中并…

V2M2引擎源码BlueCodePXL源码完整版

V2M2引擎源码BlueCodePXL源码完整版 链接: https://pan.baidu.com/s/1ifcTHAxcbD2CyY7gDWRVzQ?pwdmt4g 提取码: mt4g 参考资料:BlueCodePXL源码完整版_1234FCOM专注游戏工具及源码例子分享

图解大模型计算加速系列:vLLM源码解析3,块管理器(BlockManager)上篇

vllm块管理器又分成朴素块管理器(UncachedBlockAllocator)和prefix caching型块管理器(CachedBlockAllocator)。本篇我们先讲比较简单的前者,下篇我们来细看更有趣也是更难的后者。 【全文目录如下】 【1】前情提要…

阿里巴巴开源的FastJson 1反序列化漏洞复现攻击保姆级教程

免责申明 本文仅是用于学习检测自己搭建的靶场环境有关FastJson1反序列化漏洞的原理和攻击实验,请勿用在非法途径上,若将其用于非法目的,所造成的一切后果由您自行承担,产生的一切风险和后果与笔者无关;本文开始前请认真详细学习《‌中华人民共和国网络安全法》‌及其所在…

Linux高级编程_29_信号

文章目录 进程间通讯 - 信号信号完整的信号周期信号的编号信号的产生发送信号1 kill 函数(他杀)作用:语法:示例: 2 raise函数(自杀)作用:示例: 3 abort函数(自杀)作用:语法:示例: 4 …

macos安装git并连接gitCode远程仓库

文章目录 资料地址下载和安装初始化配置本地全局配置,SSH公私密钥生成远程SSH key配置 新建代码仓库,并关联到本地 资料地址 git官网地址gitCode地址 下载和安装 打开git官网地址,直接下载。【不建议使用brew,因为本人实践&…

【Qt】控件概述(2)—— 按钮类控件

控件概述(2) 1. PushButton2. RadioButton——单选按钮2.1 使用2.2 区分信号 clicked,clicked(bool),pressed,released,toggled(bool)2.3 QButtonGroup分组 3. CheckBox——复选按钮 1. PushButton QPushB…

B树系列解析

我最近开了几个专栏,诚信互三! > |||《算法专栏》::刷题教程来自网站《代码随想录》。||| > |||《C专栏》::记录我学习C的经历,看完你一定会有收获。||| > |||《Linux专栏》&#xff1…

etcd 快速入门

简介 随着go与kubernetes的大热,etcd作为一个基于go编写的分布式键值存储,逐渐为开发者所熟知,尤其是其还作为kubernetes的数据存储仓库,更是引起广泛专注。 本文我们就来聊一聊etcd到底是什么及其工作机制。 首先,…

查找回收站里隐藏的文件

在Windows里,每个磁盘分区都有一个隐藏的回收站Recycle, 回收站里保存着用户删除的文件、图片、视频等数据,比如,C盘的回收站为C:\RECYCLE.BIN\,D盘的的回收站为D:\RECYCLE.BIN\,E盘的的回收站为E:\RECYCLE…

【解决方案】JVM调优:给定资源条件下减少Full GC频率

1 缘起 在一次其他团队技术分享时,有幸进行了旁听, 谈到一个应用场景,服务端在给定的资源下,频繁Full GC, 降低了服务请求处理能力以及任务处理能力,频繁Full GC,导致服务处理能力下降, 服务在Full GC期间无法处理用户请求以及其他任务,服务不稳定,可以理解为服务在…