当前位置:   article > 正文

漏洞复现—Jboss反序列化漏洞利用CVE-2017-12149/CVE-2017-7504

cve-2017-1214

基础知识

  序列化就是把对象转换成字节流,便于保存在内存、文件、数据库中;反序列化即逆过程,由字节流还原成对象。

  Java中的ObjectOutputStream类的writeObject()方法可以实现序列化,ObjectInputStream类的readObject()方法用于反序列化。

  形成漏洞的根源在于类ObjectInputStream在反序列化时,没有对生成的对象的类型做限制。

漏洞原理

CVE-2017-12149

  漏洞影响5.x和6.x版本的JBOSSAS。该漏洞位于JBoss的HttpInvoker组件中的 ReadOnlyAccessFilter 过滤器中,其doFilter方法在没有进行任何安全检查和限制的情况下尝试将来自客户端的序列化数据流进行反序列化,导致攻击者可以通过精心设计的序列化数据来执行任意代码。

CVE-2017-7504

  JBoss AS 4.x及之前版本中,JbossMQ实现过程的JMS over HTTP Invocation Layer的HTTPServerILServlet.java文件存在反序列化漏洞,远程攻击者可借助特制的序列化数据利用该漏洞执行任意代码。

影响版本

  CVE-2017-12149:JBoss AS 5.x和6.x版
  CVE-2017-7504:JBoss AS 4.x及之前版本

复现思路

  1. 云主机的内置vulhub8080端口搭建实验靶场
  2. 加载攻击脚本,编译并生成序列化数据
  3. 序列化恶意数据至文件,将该文件作为请求数据主体发送数据包
  4. 云主机开启端口监听反弹过来的shell
  1. CVE-2017-12149利用路径是/invoker/readonly
  2. CVE-2017-7504利用路径是/jbossmq-httpil/HTTPServerILServlet
  3. CVE-2015-7501的利用路径是/invoker/JMXInvokerServlet

复现—CVE-2017-12149


前情提要:云主机作为攻击方,云主机内部靶场镜像开启JBOOS CVE-2017-12149漏洞容器作为受害方。

本文使用的脚本下载地址:
https://github.com/joaomatosf/Java

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/462928
推荐阅读
相关标签
  

闽ICP备14008679号