漏洞分析

https://paper.seebug.org/312/

漏洞原理

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

修复建议

更新Apache Commons Collections库 lib地址:https://github.com/ikkisoft/SerialKiller   

下载这个jar后放置于classpath,将应用代码中的java.io.ObjectInputStream替换为SerialKiller   

之后配置让其能够允许或禁用一些存在问题的类,SerialKiller有Hot-Reload,Whitelisting,Blacklisting几个特性,控制了外部输入反序列化后的可信类型。

影响范围

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

环境搭建

https://github.com/vulhub/vulhub/tree/master/jboss/JMXInvokerServlet-deserialization

初始化完成后访问http://your-ip:8080/即可看到JBoss默认页面。

复现

方法1

利用集成工具,一键getshell

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

方法2

借助ysoserial,来生成payload,发送到/invoker/readonly,可参考

https://github.com/vulhub/vulhub/tree/master/jboss/CVE-2017-12149

最新文章

  1. PHP基础知识第三趴
  2. RESTful API 设计最佳实践
  3. Jquery 学习之基础一
  4. CentOS系统没有javac命令
  5. 大过年的,不下班的,上个Android文件操作类(内部存储和sd卡均可)
  6. 【中国互联网不眠夜】Struts2漏洞百出,OneRASP鼎力相助
  7. Android—SDCard数据存取&Environment简介
  8. c# 获取MP3和AMR文件格式的时长
  9. Socket服务器整体架构概述
  10. mysql 使用记号
  11. UED大全
  12. python虚拟环境搭建大全(转)
  13. 面向对象之三个基本特征(javaScript)
  14. nis+kerberos 实现服务验证
  15. NOIP2017提高组Day2T2 宝藏 洛谷P3959 状压dp
  16. oracle截取字段中的部分字符串
  17. ubuntu下pycharm调用Hanlp实践分享
  18. 在linux环境下mongodb的安装和启动
  19. 2018.06.30 BZOJ3083: 遥远的国度(换根树剖)
  20. Java线程:新特征-有返回值的线程《转》

热门文章

  1. 洛谷 P2880 [USACO07JAN]Balanced Lineup G (ST表模板)
  2. Codeforces Round #649 (Div. 2) C. Ehab and Prefix MEXs (构造,贪心)
  3. word2vector论文笔记
  4. github 无法访问
  5. es6 curry function
  6. C# 6.0 Features , C# 7.0 Features
  7. PEP 8 & Style Guide
  8. HaiYaaaa & 嗨呀
  9. JavaScript Array methods performance compare
  10. write a node cli tools, step by step