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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2025-61882-Oracle-E-Business-Suite-Pre-Auth-RCE-Exploit — Oracle E-Business Suite(版本 12.2.3 - 12.2.14)中存在一个严重的预认证远程代码执行(RCE)漏洞,攻击者可通过恶意 HTTP 请求完全控制易受攻击的服务器——该漏洞现已在野外被积极利用。 | Kitploit
工具/GitHubGitHub/adityabhatt3010/cve-2025-61882-oracle-e-business-suite-pre-auth-rce-exploit
漏洞分析漏洞利用取证分析Web安全威胁情报事件响应日志分析
GitHubadityabhatt3010/cve-2025-61882-oracle-e-business-suite-pre-auth-rce-exploit

CVE-2025-61882-Oracle-E-Business-Suite-Pre-Auth-RCE-Exploit

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →

Oracle E-Business Suite(版本 12.2.3 - 12.2.14)中存在一个严重的预认证远程代码执行(RCE)漏洞,攻击者可通过恶意 HTTP 请求完全控制易受攻击的服务器——该漏洞现已在野外被积极利用。

查看仓库
12711个月前尚未审核
分享

CVE-2025-61882 - Oracle E-Business Suite 预认证远程代码执行漏洞利用

Oracle E-Business Suite(版本 12.2.3–12.2.14)中存在一个严重的预认证远程代码执行(RCE)漏洞,攻击者可通过恶意 HTTP 请求完全控制易受攻击的服务器——该漏洞目前已在野外被积极利用。


摘要

CVE-2025-61882 是 Oracle E-Business Suite(EBS) 中的一个严重预认证 RCE 漏洞,已被勒索/数据窃取活动积极利用。受影响版本:12.2.3 → 12.2.14。Oracle 发布了紧急公告,包含 IOC(IP 地址、shell 暂存器命令、SHA-256 哈希)。请立即修补或隔离暴露的系统,使用提供的检测规则进行狩猎,并使用下方安全的 Python 脚本扫描日志。切勿在生产环境运行公开 PoC——仅在获得授权的隔离实验室中进行测试。🛑🗿

封面


为何此事至关重要

Oracle EBS 运行着关键业务功能(ERP、薪资、财务、人力资源)。面向 Web 的 EBS 实例中的预认证 RCE 允许攻击者在应用服务器上执行任意命令,可能访问敏感数据、植入 WebShell 并窃取文件。该漏洞已在野外被武器化,并与勒索活动相关联——这是一个真实的业务安全事件,而非理论上的 CVE。🔥


技术摘要(简版)

  • 类型: 预认证远程代码执行(RCE)
  • 产品: Oracle E-Business Suite(EBS)
  • 受影响版本:
12.2.3 → 12.2.14
  • 攻击面: 面向 Web 的组件——UiServlet、/OA_HTML/ 流程及相关端点
  • CVSS(约): 9.8——按严重级别处理
  • 利用方式: 构造恶意 HTTP 请求导致在应用服务器上执行命令;已在野外观察到多种利用模式

  • 时间线(精简版)

    • 该漏洞于 2025 年被发现并利用。
    • 在公开利用报告发布后不久,Oracle 发布了紧急公告和补丁。
    • 多家厂商发布了检测指南和 IOC。
    • 公开 PoC 已流传——请极其谨慎地处理。⚠️

    观察到的攻击者行为(TTP)

    • 扫描 EBS 界面和版本信息泄露。
    • 向 UiServlet 和 /OA_HTML/ 发送构造的 POST/请求以触发 RCE。
    • 部署暂存器/WebShell 并生成反向 Shell(例如 /bin/bash -i >& /dev/tcp/...)。
    • 压缩并窃取敏感文件,随后进行勒索和数据泄露威胁。
    • 使用与已知勒索组织相关的基础设施。

    Oracle 提供的 IOC(请立即使用)

    Oracle 指出这些 IOC 是跨事件观察到的活动(不限于 CVE-2025-61882)。任何正向匹配都应视为高优先级。

    IP 地址

    • 200.107.207.26 — 潜在的 GET/POST 活动
    • 185.181.60.11 — 潜在的 GET/POST 活动

    Shell 暂存器模式

    • sh -c /bin/bash -i >& /dev/tcp// 0>&1 — 观察到的出站 TCP 反向 Shell 风格命令

    SHA-256 哈希(利用/PoC 工件)

    • 76b6d36e04e367a2334c445b51e1ecce97e4c614e88dfb4f72b104ca0f31235d (oracle_ebs_nday_exploit_poc_scattered_lapsus_retard_cl0p_hunters.zip)
    • aa0d3859d6633b62bccfb69017d33a8979a3be1f3f0a5a4bf6960d6c73d41121 (.../exp.py)
    • 6fd538e4a8e3493dda6f9fcdc96e814bdd14f3e2ef8aa46f0143bff34b882c1b (.../server.py)

    受影响版本(重复强调)

    • Oracle E-Business Suite 12.2.3 — 12.2.14。🔁

    高优先级检测与关联规则(实用入门)

    摘要 该 GitHub 仓库包含针对 CVE-2025-61882(Oracle E-Business Suite 预认证 RCE)的被动检测工件。请使用这些规则进行狩猎、分类和遏制——而非利用。🛑🗿

    detections/ 文件夹中已添加了一份简短的 Description.md(迷你 README)——请查看该文件获取完整说明和摘要。此顶层 README 仅概述检测包及其用法,以便您快速获取并运行。

    此包包含的内容

    • detections/splunk/

      • oracle_cve61882_ioc_traffic.spl — 检测与 Oracle 提供的 IOC IP 地址之间的流量。
      • oracle_cve61882_uiservlet_post.spl — 检测来自外部 IP 对 UiServlet / /OA_HTML/ 的可疑 POST 请求。
      • oracle_cve61882_reverse_shell.spl — 检测端点日志中反向 Shell 风格的进程创建。
    • detections/elastic/

      • oracle_cve61882_uiservlet_post.kql — 用于 UiServlet/OA_HTML POST 请求的 KQL。
      • oracle_cve61882_filehash_detection.kql — 用于匹配 Oracle 提供的恶意 SHA-256 哈希的 KQL。
    • detections/scripts/

      • ebs_safe_hunt.py — 安全的离线 Python 日志解析器(无网络调用,不执行利用代码)。可针对访问日志副本运行。
    • detections/Description.md

      • 您添加的迷你说明/摘要——包含完整上下文、IOC、受影响版本和指南。

    快速开始

    1. 查看 detections/Description.md 获取上下文和 IOC。✅

    2. 将 Splunk .spl 查询放入您的 Splunk 环境(或导入为已保存的搜索/告警)。

    3. 将 KQL 查询粘贴到 Kibana / Elastic 检测规则中。

    4. 将 ebs_safe_hunt.py 复制到仅对归档或脱敏日志具有读取权限的主机,然后运行:

      root@kitploit:~
      python3 ebs_safe_hunt.py /path/to/access.log
      

      查看标记的 malicious_ips、servlet_posts、shell_stager 和 malicious_hash 输出,并根据需要升级处理。🕵️‍♂️

    安全与交战规则

    • 这些工件仅为被动检测工具。请不要针对生产环境或您不拥有/未获授权的系统运行公开 PoC。⚠️
    • 如果检测显示已确认遭到入侵(文件哈希命中、反向 Shell 证据或 WebShell),请立即隔离主机并收集取证数据。

    深入解析脚本:

    原则:将版本信息泄露或界面命中与高置信度指标(恶意 IP、对 UiServlet/OA_HTML 的 POST、反向 Shell 进程字符串、文件哈希匹配、大量出站上传)相结合。

    Splunk 示例 检测与 Oracle IOC 的流量:

    root@kitploit:~
    index=web_logs OR index=proxy_logs
    | where clientip IN ("200.107.207.26","185.181.60.11") OR dest_ip IN ("200.107.207.26","185.181.60.11")
    | stats count by clientip, dest_ip, uri, method, useragent, _time
    | sort - count
    

    检测来自外部 IP 的 UiServlet/OA_HTML POST 请求:

    root@kitploit:~
    index=web_logs sourcetype=access_combined
    | where (uri LIKE "%UiServlet%" OR uri LIKE "%/OA_HTML/%") AND method="POST"
    | where NOT cidrmatch("10.0.0.0/8", clientip)  // 根据您的内网范围调整
    | stats count by clientip, uri, useragent, _time
    | sort - count
    

    检测反向 Shell 进程创建(EDR):

    root@kitploit:~
    index=endpoint_events sourcetype=os_process
    | where process_cmdline LIKE "%/bin/bash -i%/dev/tcp/%" OR process_cmdline LIKE "%/dev/tcp//%"
    | table _time host user process_name process_cmdline parent_process
    

    Elastic / KQL 示例 UiServlet 可疑 POST:

    root@kitploit:~
    http.request.method : "POST" and (http.request.uri : "*UiServlet*" or http.request.uri : "/OA_HTML/*") and not client.ip : ("10.0.0.0/8")
    

    文件哈希检测:

    root@kitploit:~
    event.type: "file" and file.hash.sha256 : ("76b6d36e04e3...", "aa0d3859d66...", "6fd538e4a8e3...")
    

    Sigma(可移植规则思路)

    • 规则:来自外部 IP 对 UiServlet//OA_HTML/ 的 POST → 高优先级
    • 规则:创建包含 /bin/bash -i >& /dev/tcp/ 的进程 → 严重
    • 规则:三个 SHA-256 哈希的文件哈希匹配 → 确认已入侵

    安全检测脚本(Python)—— 用于日志检测(无利用、无网络调用)

    该脚本解析 combined 格式的 Web 访问日志,并标记可疑的 UiServlet/OA_HTML POST 请求、来自 Oracle 所列恶意 IP 的请求、shell 暂存器模式以及提供的 SHA-256 哈希的出现。它不执行任何网络活动或运行利用代码。

    root@kitploit:~
    #!/usr/bin/env python3
    """
    ebs_safe_hunt.py — CVE-2025-61882 指标的安全日志解析器。
    
    用法:
        python3 ebs_safe_hunt.py /path/to/access.log
    
    说明:
     - 解析 Apache/Nginx combined 日志行。
     - 标记 UiServlet/OA_HTML POST 请求、Oracle 公告中的恶意 IP、
       shell 暂存器模式以及观察到的 SHA256 哈希。
     - 安全:无网络 / 不执行利用代码。
    """
    
    import sys
    import re
    from collections import Counter, defaultdict
    
    # 常见 combined 日志格式的正则表达式
    LOG_PATTERN = re.compile(
        r'(?P<ip>\S+) \S+ \S+ \[(?P<time>.*?)\] "(?P<method>\S+) (?P<uri>\S+) \S+" (?P<status>\d{3}) (?P<size>\S+) "(?P<ref>[^"]*)" "(?P<ua>[^"]*)"'
    )
    
    # Oracle 提供的 IOC
    MALICIOUS_IPS = {"200.107.207.26", "185.181.60.11"}
    MALICIOUS_HASHES = {
        "76b6d36e04e367a2334c445b51e1ecce97e4c614e88dfb4f72b104ca0f31235d",
        "aa0d3859d6633b62bccfb69017d33a8979a3be1f3f0a5a4bf6960d6c73d41121",
        "6fd538e4a8e3493dda6f9fcdc96e814bdd14f3e2ef8aa46f0143bff34b882c1b",
    }
    SHELL_PATTERN = "/bin/bash -i"  # 我们搜索此子字符串(反向 Shell 风格)
    SUSPICIOUS_PATHS = ["UiServlet", "/OA_HTML/"]
    
    # 可选:扫描器常用的可疑用户代理列表
    SUSPICIOUS_UAS = ["curl", "wget", "python-requests", "nikto", "sqlmap", "masscan", "Nmap"]
    
    def analyze_log(path):
        ip_counts = Counter()
        uri_counts = Counter()
        ua_counts = Counter()
        suspicious = defaultdict(list)
    
        with open(path, "r", errors="replace") as fh:
            for line_no, line in enumerate(fh, 1):
                m = LOG_PATTERN.search(line)
                if not m:
                    # 可选:仍检查非结构化行中的哈希或 shell 模式
                    if any(h in line for h in MALICIOUS_HASHES):
                        suspicious["malicious_hash_lines"].append((line_no, line.strip()))
                    if SHELL_PATTERN in line or "/dev/tcp/" in line:
                        suspicious["shell_pattern_lines"].append((line_no, line.strip()))
                    continue
    
                ip = m.group("ip")
                method = m.group("method")
                uri = m.group("uri")
                ua = m.group("ua")
                size = m.group("size")
    
                ip_counts[ip] += 1
                uri_counts[uri] += 1
                ua_counts[ua] += 1
    
                # 1) 恶意 IP(Oracle)
                if ip in MALICIOUS_IPS:
                    suspicious["malicious_ips"].append((line_no, ip, method, uri, ua))
    
                # 2) 对可疑 EBS 路径的 POST 请求
                if method.upper() == "POST" and any(p in uri for p in SUSPICIOUS_PATHS):
                    suspicious["servlet_posts"].append((line_no, ip, uri, ua))
    
                # 3) 可疑用户代理(扫描器)
                if any(k.lower() in ua.lower() for k in SUSPICIOUS_UAS):
                    suspicious["suspicious_ua"].append((line_no, ip, uri, ua))
    
                # 4) 超大响应(可能的窃取)— 根据您的环境调整阈值
                try:
                    if size != "-" and int(size) > 5_000_000:  # >5MB
                        suspicious["large_responses"].append((line_no, ip, uri, size))
                except ValueError:
                    pass
    
                # 5) 行中的 shell 暂存器模式或 /dev/tcp 模式
                if SHELL_PATTERN in line or "/dev/tcp/" in line:
                    suspicious["shell_stager"].append((line_no, ip, uri, line.strip()))
    
                # 6) 日志中存在的已知恶意文件哈希(如果可用)
                for h in MALICIOUS_HASHES:
                    if h in line:
                        suspicious["malicious_hash"].append((line_no, ip, uri, h))
    
        return {
            "ip_counts": ip_counts,
            "uri_counts": uri_counts,
            "ua_counts": ua_counts,
            "suspicious": suspicious
        }
    
    def pretty_report(r, top=10):
        print("\n=== EBS 狩猎报告 ===\n")
        print("Top 源 IP:")
        for ip, c in r["ip_counts"].most_common(top):
            print(f"  {ip}: {c}")
        print("\nTop URI:")
        for uri, c in r["uri_counts"].most_common(top):
            print(f"  {uri}: {c}")
        print("\nTop 用户代理:")
        for ua, c in r["ua_counts"].most_common(top):
            print(f"  {ua}: {c}")
    
        print("\n可疑发现:")
        if not r["suspicious"]:
            print("  未发现。")
            return
    
        for k, items in r["suspicious"].items():
            print(f"\n-- {k} ({len(items)} 个匹配) --")
            for item in items[:100]:
                print("  " + " | ".join(map(str, item)))
    
    if __name__ == "__main__":
        if len(sys.argv) != 2:
            print("用法:python3 ebs_safe_hunt.py /path/to/access.log")
            sys.exit(1)
        path = sys.argv[1]
        result = analyze_log(path)
        pretty_report(result)
    

    使用方法:将 ebs_safe_hunt.py 复制到对归档或复制的日志具有读取权限的主机。运行:

    root@kitploit:~
    python3 ebs_safe_hunt.py /path/to/access.log
    

    查看标记的 malicious_ips、servlet_posts、shell_stager 和 malicious_hash 结果,并适当升级处理。🕵️‍♂️


    即时缓解与遏制清单(实用)

    • 修补: 根据公告为所有 EBS 12.2.3–12.2.14 安装应用 Oracle 紧急补丁。遵循先决条件 CPU 顺序。✅
    • 如果无法立即修补: 阻止对 EBS 界面的公共访问(防火墙、WAF、限制为 VPN/可信 IP)。🔒
    • 在边界阻止 IOC: 阻止 200.107.207.26 和 185.181.60.11 以及任何其他供应商提供的 IOC IP/域名。
    • 狩猎: 运行上述 Splunk/Elastic 狩猎规则以及跨日志的安全 Python 脚本。
    • EDR/AV: 搜索三个 SHA-256 哈希和 WebShell 工件;如发现则隔离主机。
    • 取证: 对可疑主机捕获内存和磁盘镜像;保留日志。
    • 凭据: 遏制后轮换服务/管理员凭据。
    • 法律/沟通: 如果受监管数据被窃取,准备事件通知。

    领导层简报(一页纸——可复制粘贴)

    主题: 严重:CVE-2025-61882 — Oracle E-Business Suite — 需立即采取行动

    内容: Oracle EBS(12.2.3–12.2.14)中的严重预认证 RCE(CVE-2025-61882)。已被数据窃取/勒索活动利用。

    立即要求(未来 24 小时):

    • 确认是否存在 EBS 12.2.3–12.2.14 实例。
    • 如果存在:立即应用 Oracle 紧急补丁或阻止对这些实例的外部访问。
    • 阻止 Oracle IOC 并将供应商源接入 SOC 检测。
    • SOC:运行优先狩猎规则(UiServlet/OA_HTML POST、恶意 IP、反向 Shell 模式、文件哈希匹配)。
    • 如有任何 IOC 命中:隔离主机、收集取证数据、通知法律部门。

    风险: 高——可能导致完整应用服务器入侵、数据窃取、监管风险。底线:立即修补或隔离。—— 🗿


    最终说明与警告

    • 公开 PoC 已存在且可被武器化。请勿在未经书面授权的情况下在生产环境或第三方系统上运行。仅使用隔离实验室。⚠️
    • Oracle 的 IOC 代表跨事件观察到的活动——某些指标可能与相关攻击有关。结合上下文调查命中,但任何正向匹配都应升级处理。
    • 版本信息泄露噪音较大——在得出入侵结论前,务必关联版本证据与高置信度利用指标。📌

    结语

    您已获得所需的一切:概述、来自 Oracle 的 IOC、实用狩猎规则以及用于启动分类的安全脚本。修补或隔离您的 EBS 服务器,通过 SOC 运行 IOC 狩猎,并隔离任何可疑内容。保持警惕、快速修补、展现您的应急响应能力。🗿🔥


    下载工具