This is an automated email from the ASF dual-hosted git repository. jin pushed a commit to branch sec in repository https://gitbox.apache.org/repos/asf/hugegraph-doc.git
commit b64524676b93a458d0d0cd26df681c3a5fb7fa3f Author: imbajin <[email protected]> AuthorDate: Thu Apr 16 11:38:27 2026 +0800 docs(sec): enhance security warnings for gremlin execution in CN docs --- content/cn/docs/clients/restful-api/gremlin.md | 5 +++++ content/cn/docs/config/config-authentication.md | 7 +++++-- content/cn/docs/guides/security.md | 8 ++++++++ content/cn/docs/quickstart/hugegraph/hugegraph-server.md | 2 +- content/cn/docs/quickstart/toolchain/hugegraph-hubble.md | 2 ++ 5 files changed, 21 insertions(+), 3 deletions(-) diff --git a/content/cn/docs/clients/restful-api/gremlin.md b/content/cn/docs/clients/restful-api/gremlin.md index ab22c1cf..52642f56 100644 --- a/content/cn/docs/clients/restful-api/gremlin.md +++ b/content/cn/docs/clients/restful-api/gremlin.md @@ -7,6 +7,11 @@ description: "Gremlin(图查询语言)REST 接口:通过 HTTP 接口执行 G ### 8.1 Gremlin +> ⚠️ **SEC 提醒:生产环境下安全使用原生查询接口** +> +> 图查询语言 (如 Gremlin/Cypher) 本身的灵活性会带来一些潜在的安全隐患。为了保障核心安全,**请避免直接在公网环境暴露任何相关的原生查询接口**。 +> 在必须对内暴露的生产场景中,必须开启 **[鉴权体系 (Auth)](/cn/docs/config/config-authentication/)** 并结合 **IP 白名单**作为双重保障机制,严格控制用户执行权限。同时建议结合 Audit Log (审计日志) 来审计具体执行的语句,以及采用 **[容器环境 (Docker/K8s)](/cn/docs/quickstart/hugegraph/hugegraph-server/#31-使用-docker-容器-便于测试)** 部署以提升系统级的安全隔离。 + #### 8.1.1 向 HugeGraphServer 发送 gremlin 语句(GET),同步执行 ##### Params diff --git a/content/cn/docs/config/config-authentication.md b/content/cn/docs/config/config-authentication.md index fef92032..f4ae6144 100644 --- a/content/cn/docs/config/config-authentication.md +++ b/content/cn/docs/config/config-authentication.md @@ -24,8 +24,11 @@ user(name=xx) -belong-> group(name=xx) -access(read)-> target(graph=graph1, reso ### 配置用户认证 -HugeGraph 目前默认**未启用**用户认证功能,需通过修改配置文件来启用该功能。(Note: 如果在生产环境/外网使用, -请使用 **Java11** 版本 + 开启权限避免安全相关隐患) +HugeGraph 目前默认**未启用**用户认证功能,需通过修改配置文件来启用该功能。 + +> ⚠️ **SEC 提醒:图查询语言 (Gremlin/Cypher) 的安全性** +> +> 出于图查询语言的灵活性可能带来的潜在系统安全隐患,**请避免直接在公网/外网环境暴露任何查询相关接口**。在实际生产部署时,请以此处的 **[鉴权认证体系](/cn/docs/config/config-authentication/)** 结合 **IP 白名单** 为安全双重保障机制,同时建议开启 Audit Log (审计日志) 以精准定位用户执行的具体查询语句。鉴于 Server 的无状态特性,整体架构上强烈推荐采用 **[容器化环境 (Docker/K8s)](/cn/docs/quickstart/hugegraph/hugegraph-server/#31-使用-docker-容器-便于测试)** 部署,以极低成本有效隔离底层系统的安全风险。 目前已内置实现了`StandardAuthenticator`模式,该模式支持多用户认证与细粒度权限控制。此外,开发者可以自定义实现`HugeAuthenticator`接口来对接自身的权限系统。 diff --git a/content/cn/docs/guides/security.md b/content/cn/docs/guides/security.md index 9a0a77dc..9c25ae8e 100644 --- a/content/cn/docs/guides/security.md +++ b/content/cn/docs/guides/security.md @@ -6,6 +6,14 @@ weight: 7 ## 报告 Apache HugeGraph 的安全问题 +> ⚠️ **SEC 提醒:致漏洞研究人员关于图查询语言的说明** +> +> 鉴于图查询语言 (如 Gremlin/Cypher) 本身在解析与执行上的灵活性,HugeGraph 推荐在生产环境依赖 **"[Auth (配置鉴权)](/cn/docs/config/config-authentication/) + IP 白名单 + Audit Log (审计日志)"** 机制来践行最小权限原则。同时由于 Server 节点基本是无状态的,**所有生产环境均明确建议使用[容器环境 (Docker/K8s)](/cn/docs/quickstart/hugegraph/hugegraph-server/#31-使用-docker-容器-便于测试) 进行隔离部署**。 +> +> 近期社区已收到较多关于图查询语言灵活性的安全反馈。在 HugeGraph 安全体系整体重构完成前,对于在**不启用或跳过 Auth 系统/避开授权身份**的前提下执行 DSL 查询的情况,此类已知风险将**不再单独视为新漏洞**进行处理。 +> +> 但是,如果在**已开启 Auth 系统**的环境中,仍能以**匿名或未授权身份访问**并进行漏洞利用,或者成功**绕过 IP 白名单 / 逃逸容器**造成严重越权或底层系统破坏,我们仍然将其视为高危安全漏洞,非常欢迎您随时向我们反馈! + 遵循 ASF 的规范,HugeGraph 社区对**解决修复**项目中的安全问题保持非常积极和开放的态度。 我们强烈建议用户首先向我们的独立安全邮件列表报告此类问题,相关详细的流程规范请参考 [ASF SEC](https://www.apache.org/security/committers.html) 守则。 diff --git a/content/cn/docs/quickstart/hugegraph/hugegraph-server.md b/content/cn/docs/quickstart/hugegraph/hugegraph-server.md index 8ecc4a08..2be45ba4 100644 --- a/content/cn/docs/quickstart/hugegraph/hugegraph-server.md +++ b/content/cn/docs/quickstart/hugegraph/hugegraph-server.md @@ -34,7 +34,7 @@ Core 模块是 Tinkerpop 接口的实现,Backend 模块用于管理数据存 - 方式 3:源码编译 - 方式 4:使用 tools 工具部署 (Outdated) -**注意**:生产环境或对公网暴露的环境必须使用 Java 11,并开启 [Auth 权限认证](/cn/docs/config/config-authentication/),否则存在安全风险。 +> ⚠️ **SEC 提醒**:由于图查询语言 (如 Gremlin/Cypher) 的高度灵活性,直接暴露原生查询接口会带来潜在的安全隐患,因此**请避免直接在公网环境中暴露任何查询相关接口**。生产环境中务必开启 **[鉴权体系 (Auth)](/cn/docs/config/config-authentication/)** 配合 **IP 白名单** 构成双重保障机制,同时建议辅以 Audit Log (审计日志) 追踪具体查询语句。推荐整体采用 **[容器化环境 (Docker/K8s)](#31-使用-docker-容器-便于测试)** 进行部署以获得更好的系统级安全隔离。 #### 3.1 使用 Docker 容器 (便于**测试**) <!-- 3.1 is linked by another place. if change 3.1's title, please check --> diff --git a/content/cn/docs/quickstart/toolchain/hugegraph-hubble.md b/content/cn/docs/quickstart/toolchain/hugegraph-hubble.md index 51adbc0b..add0f97d 100644 --- a/content/cn/docs/quickstart/toolchain/hugegraph-hubble.md +++ b/content/cn/docs/quickstart/toolchain/hugegraph-hubble.md @@ -402,6 +402,8 @@ HugeGraph 支持 Apache TinkerPop3 的图遍历查询语言 Gremlin,Gremlin Gremlin 查询后,下方为图结果展示区域,提供 3 种图结果展示方式,分别为:【图模式】、【表格模式】、【Json 模式】。 +> ⚠️ **SEC 提醒**:Hubble 允许在网页端直接输入并执行 Gremlin 原生查询语句,这赋予了使用者较高的操作权限。**请避免将 Hubble 服务暴露在公网环境**,建议在使用时确保图数据库服务端已开启 **[鉴权体系 (Auth)](/cn/docs/config/config-authentication/)** 并配合 **IP 白名单**进行严格的权限控制,防止未授权访问或恶意代码执行风险。 + 支持缩放、居中、全屏、导出等操作。 【图模式】
