# Zeabur 2026 年八月安全事件

> 安全事件调查进度、已确认的影响、响应措施与后续改善。

**本文所有事件日期与时间均以协调世界时（UTC）表示。**

2026 年 8 月 27 日，Zeabur 发生了一起安全事件：攻击者未经授权使用了部分账号的 Zeabur Legacy API Key，并通过内部管理服务取得云端访问权限，进一步访问共享集群与生产环境数据库。团队确认，部分账号信息及项目环境变量遭到读取，其中包含第三方 API 密钥、数据库密码及其他服务凭证。

这次事件暴露了 Zeabur 在内部凭证的保存与权限划分、共享集群的网络隔离，以及异常访问的监控与告警等方面的不足。对于本次事件造成的影响，Zeabur 团队向所有受影响的用户致以最诚挚的歉意。

<div id="confirmed-impact-scope" />

## 已确认的影响范围

我们依据平台请求记录、生产环境数据库查询记录，以及 AI Hub 访问密钥、使用与计费记录，交叉比对遭查询或读取的账号、项目及服务，并据此界定目前已确认的影响范围。

### 项目环境变量

经调查确认，部分项目环境变量的名称和值遭到未经授权读取，其中包含 AI 服务及其他第三方 API 密钥、云端访问凭证、数据库连接信息与密码、应用程序签名密钥，以及其他项目配置。我们依据生产环境数据库的查询记录，逐一比对遭读取的项目与服务，并以此界定本项影响范围。

Zeabur 已完成[平台内部凭证的处理](#internal-credential-response)，并于 8 月 28 日 08:53 发出第一封紧急通知，同日 17:03 补发第二封通知，提醒受影响的用户[更换相关第三方凭证](#third-party-credential-response)。

### 账号与 AI Hub

平台请求记录显示，攻击者曾使用取得的 Zeabur Legacy API Key 查询部分账号及 AI Hub 信息，并创建 AI Hub 访问密钥。经比对 AI Hub 的使用与计费记录，这批由攻击者创建的密钥未曾用于调用 AI Hub，也未产生 AI Hub 费用，目前均已[由团队排查后撤销](#ai-hub-response)。

## 事件经过

目前确认的事件路径跨越四个系统边界：攻击者先通过公开服务的远程代码执行漏洞（Remote Code Execution, RCE）进入共享集群内网，接着取得缓存中的高权限 Zeabur Legacy API Key，并用该密钥读取内部管理服务的环境变量。其中的 AWS root 密钥让攻击者取得云端基础设施的最高权限；共享集群原有的私有网络连接和数据库凭证，则让攻击者得以访问生产环境数据库。

<EscalationLadder
  title="事件路径"
  description="虚线代表系统之间原有的边界；各箭头标示攻击者在该阶段取得的权限。"
  entry={{
    title: '公网上的攻击者',
    detail: '起点为一项对外开放的用户服务',
  }}
  crossings={[
    {
      boundary: '边界一　应用程序',
      reason: 'NextChat v2.16.1 的 CVE-2026-7644，MCP 功能授权检查不足',
      zone: '共享集群 user namespace',
      gained: '容器内的代码执行权',
    },
    {
      boundary: '边界二　共享集群的内网',
      reason: '共享集群支持跨项目内网连接，相关活动经由内网访问路由缓存',
      zone: 'Zeabur 平台',
      gained: '团队管理员的 Legacy API Key',
    },
    {
      boundary: '边界三　平台账号与云端账号',
      reason: '内部管理服务的配置中包含长期使用的 AWS root 密钥',
      zone: 'AWS 账号',
      gained: 'AWS root 权限与东京共享集群的控制权',
    },
    {
      boundary: '边界四　共享集群与核心生产环境',
      reason: '既有运维任务具备连接生产环境的私有网络和数据库凭证',
      zone: '核心生产环境',
      gained: '核心生产数据库的读取权',
    },
  ]}
  caption="图 1：目前确认的事件路径，以及攻击者在每个阶段取得的权限"
/>

这条路径涉及两项在事故前便已进入下线阶段的旧产品机制：共享集群（Shared Cluster）及 Zeabur Legacy API Key。我们已在 2026 年 2 月[公告共享集群下线计划](/changelogs/phasing-out-shared-cluster)，并在 3 月停止创建新项目、4 月停止在已有项目中创建新服务。本次涉及的服务在下线公告发布前便已部署，事发时仍在运行。

### 第一阶段：通过公开服务进入共享集群内网

调查确认，攻击者最先利用的是用户此前部署在共享集群、事发时仍在运行的 [NextChat](https://github.com/ChatGPTNextWeb/NextChat) v2.16.1 服务。该服务的运行日志留下了明确的漏洞利用痕迹，指向与 MCP 功能授权检查有关的 [CVE-2026-7644](https://nvd.nist.gov/vuln/detail/CVE-2026-7644)。取得该服务的代码执行权后，相关活动也可以通过共享集群内网连接到该服务原本可访问的内部端点。

<NamespaceCrossing
  title="由用户服务连接至平台路由缓存"
  description="攻击者进入共享集群后，经由内网连接到保存路由信息的缓存"
  clusterLabel="东京共享集群（hnd1）"
  left={{
    zone: 'user namespace',
    title: 'NextChat 服务 v2.16.1',
    detail: '遭 CVE-2026-7644 利用后，攻击者在容器内取得代码执行能力',
  }}
  right={{
    zone: 'ingress namespace',
    title: '路由缓存',
    detail: '用于保存 ingress 路由信息，其中也存有 Zeabur Legacy API Key',
  }}
  crossing={{
    label: '经由共享集群内网连接',
    note: '当时的访问控制未能阻止这次连接',
  }}
  outbound={{
    label: '以取得的管理员密钥调用',
    zone: '平台控制面',
    title: 'Zeabur API',
    detail: '请求记录显示该身份被用来查询账号、AI Hub、项目与服务配置',
  }}
  caption="图 2：攻击者从 NextChat 进入共享集群后，经由内网取得路由缓存中的 Legacy API Key"
/>

这份缓存原本用于保存域名与服务的对应关系，其中同时存有 Zeabur Legacy API Key。攻击者读取缓存后，访问范围便不再只限于 NextChat。

我们比对攻击者使用的账号、资源清单和平台请求记录，确认这些 Zeabur Legacy API Key 来自该缓存。攻击者接着批量测试其中的密钥，筛选出少数仍然有效且权限较高的密钥，其中一组属于团队管理员。

Legacy API Key 是 Zeabur 早期提供给 CLI 与自动化脚本使用的认证方式。该机制不支持 scope，无法按操作与资源限制权限，也没有明确的有效期，是本次事件影响范围扩大的原因之一。

所有 Zeabur Legacy API Key 均已停用。现行 Access Token 支持 scope，可按用途限制权限，也设有有效期并保留审计记录；团队亦已在事件发生后[加强 API 的授权检查](#api-authorization-response)。

### 第二阶段：从 Zeabur 管理权限进入 AWS 账号

攻击者利用这组管理员的 Zeabur Legacy API Key 枚举内部项目，并读取内部管理服务的环境变量，其中包含多组 AWS 访问密钥，包括一组长期保留的 AWS root 用户密钥。云端审计记录显示，这些配置遭读取后，该来源随即测试并使用了相关密钥。内部项目当时保存的密钥具备超出日常运行所需的云端权限，我们因此判定事件范围延伸到 AWS 账号。

### 第三阶段：从 AWS 与共享集群进入生产环境

取得 AWS root 权限后，攻击者开始枚举云端资源，接着进入东京共享集群。云端审计与集群记录显示，集群内出现异常的一次性任务及高权限变更，其中一个服务账号被授予集群管理员权限。至此，攻击者取得该共享集群的最高控制权。

Zeabur 的核心系统部署在另一家云服务商，生产环境数据库没有公开网络入口，仅能通过私有网络连接。然而，共享集群中的一项既有定时运维任务具备这项连接能力。

这项定时任务用于清理共享集群中的服务，因此需要连接核心系统。该任务持有的数据库凭证可读取超出实际需要的内容，并可通过私有网络连回核心系统。攻击者在控制东京共享集群后，同时取得了这组网络连接和数据库权限。

<NetworkPivot
  title="共享集群连回生产环境的路径"
  description="生产环境数据库没有公开入口；共享集群中的运维任务可通过私有网络连接"
  blocked={{
    title: '公网',
    label: '没有公开入口，连接被拦截',
  }}
  pivot={{
    zone: 'AWS · 东京共享集群',
    title: '共享集群服务清理定时任务',
    detail:
      '这项任务因业务需要，持有一组权限超出任务所需的核心数据库凭证，也能通过私有网络连回核心系统；攻击者控制集群后两者一并取得',
    label: '私有网络 · 受信任流量',
  }}
  target={{
    zone: '核心生产环境 · 另一家云服务商',
    title: '生产环境数据库',
    detail:
      '攻击者以该服务身份读取项目环境变量：07:54 出现首次确认的入侵记录，11:52 起出现大量读取',
  }}
  caption="图 3：共享集群中的运维任务同时持有私有网络连接与数据库凭证，攻击者因此能访问生产环境数据库"
/>

数据库记录确认，攻击者使用这个服务身份读取了生产环境中的项目环境变量。我们比对查询记录后，没有发现其他数据遭到读取，并已[撤销这组凭证](#production-access-response)、移除共享集群连回核心系统的路径。

## 我们的责任与攻击扩大的根因

NextChat 的漏洞是本次事件的最初入口。作为允许用户部署及运行应用程序的平台，我们有责任在工作负载遭入侵时，限制攻击者能够访问的网络、数据与权限。路由缓存中保存的平台凭证、缺乏权限范围与有效期的 Legacy API Key、内部服务持有的过高云端权限，以及运维任务同时具备的跨环境连接与过度授权的数据库凭证，共同扩大了事件影响。共享集群与 Legacy API Key 虽已进入下线阶段，我们仍应确保它们在停止运行前具备足够的隔离与访问限制。

## 响应与修复措施

针对[上述已确认的影响范围](#confirmed-impact-scope)，团队在发现异常后先切断已确认的访问路径，再逐一处理相关凭证与受影响的环境。

### 已完成

- <span id="internal-credential-response" />
  **平台内部凭证处置：**
  已停用或轮换所有内部管理密钥、数据库密码与缓存密码，并全面停用 Zeabur Legacy
  API Key 认证方式；所有旧密钥均无法再用于访问 Zeabur。
- <span id="ai-hub-response" />
  **AI Hub 访问密钥处置：** 经确认由攻击者创建的 AI Hub 访问密钥均已撤销；AI Hub
  功能目前仍维持停用，后续处理方式将另行公告。
- <span id="api-authorization-response" />
  **API 授权与访问记录：** 已加强现有 API 的授权检查，并在现行 Access Token
  中加入访问记录功能。用户可前往 [Access Token
  管理页面](https://zeabur.com/account/api-keys)，查看每一个 Token
  发起请求的时间、来源及执行的操作，以识别不明使用并追查异常访问。
- <span id="production-access-response" />
  **生产环境访问路径与数据库凭证：**
  已切断共享集群原有的生产环境数据库连接、撤销对应的数据库服务账号，并移除已识别的异常集群授权。
- **旧有内部服务与共享集群：** 已停用涉及本次事件的旧有内部服务、分离路由信息与用户凭证、清除旧缓存中的凭证，并完成共享集群主机更换。
- **审计、监控与告警：** 已补齐集群、网络、数据库与缓存的操作记录，新增高权限变更、云端账号异常使用与可疑数据库查询的告警，并启用云端运行时安全监控。
- **记录保存与内部安全检查：** 已延长监控、日志与请求追踪数据的保存期限、扩充存储空间，并完成相关员工设备与开发环境的安全自查。

### 持续进行

- **跨系统记录比对：** 持续比对云端、集群、数据库与应用程序记录，确认是否仍有其他与事件相关的操作。
- **支持、补偿与机关说明：** 持续处理受影响用户提出的支持与补偿申请，并向相关机关说明调查结果。
- <span id="third-party-credential-response" />
  **受影响用户的第三方凭证更换：** 团队已于 8 月 28 日 08:53
  发出第一封紧急通知，并于同日 17:03
  补发第二封通知。尚未完成处置的用户仍需撤销通知中列出的凭证、创建新的凭证、更新服务配置并重新部署相关服务，同时核对访问记录与费用。
- **预防性凭证更换：** 为降低后续风险，建议用户更换所有曾存放在 Zeabur 环境变量中且目前仍然有效的凭证，包括通知中未列出的项目。

<div id="product-and-security-improvements" />

## 产品与安全改善

事件发生后，团队重新检查了 Zeabur 保存及访问机密信息的方式，减少集中保存的数据，并将各项服务的权限收敛到工作所需范围。本次升级的功能说明及操作方式，详见[安全更新公告](/changelogs/security-update)。

### 已实施

#### 环境变量改为存放在用户的服务器

新的环境变量保存方式会将配置直接留在用户的专用服务器上，不再集中存放于 Zeabur 的数据库。

新服务默认采用此方式；已有服务可从环境变量页面迁移，完成后对应的环境变量会从 Zeabur 的中央数据库移除。这项功能目前只适用于专用服务器，共享集群上的服务不会自动切换。

此调整只改变保存方式，并不会使旧凭证失效，因此本次事件涉及的凭证仍需完成更换。

#### 移除 Zeabur 保存的 SSH 凭证

新购买的服务器不再由 Zeabur 长期保存 SSH 密码或私钥；支持迁移的已有服务器，也可以从配置中移除 Zeabur 保存的凭证，不会影响其他服务器管理功能。用户还可以在 Zeabur 控制台查看 SSH 登录记录，确认成功登录与登录尝试的来源；防火墙则可以限制哪些来源能连接到用户的服务器。

### 持续改善

#### 下线中系统的隔离与监控

团队会持续维护下线中系统的隔离、监控与访问控制，直到已有工作负载完成迁移或停止运行。

#### 身份认证、授权与审计

目前 Zeabur Access Token 已支持 scope，可按用途限制权限。团队也在持续加强现有 API 的 scope 与授权检查，并调整登录令牌的有效期、组件权限、资源授权与敏感操作记录。

调整访问控制期间，GitHub 相关功能、环境变量管理与电子邮件等服务曾受到影响。团队正在改善变更前的流程，以减少后续调整对服务的影响。

#### 事件检测与用户沟通

团队在 8 月 28 日 02:34 收到 API 密钥遭盗用的反馈后，才确认这起事件。事后回查数据库记录，最早的入侵记录出现在 8 月 27 日 07:54，当时的监控与告警并未识别出这次未经授权的访问。

初期调查时，团队因证据不完整而误判了影响范围，在 8 月 28 日 08:53 发出第一封紧急通知后，又于 17:03 补发第二封。对于初期通知未能完整覆盖实际影响范围所造成的不便，Zeabur 团队在此致歉，并将持续改善影响范围的核查与通知流程，以便在确认事件后更及时地提供准确的处置信息。

## 重要时间轴

下表列出目前确认的时间点，均以 UTC 时间为准。凭证第一次遭使用的时间，并不代表攻击者在同一时间取得凭证并开始滥用。

| 时间（UTC）            | 事件与处置                                                                                              |
| ---------------------- | ------------------------------------------------------------------------------------------------------- |
| 8 月 27 日 02:34:17    | 出现最早确认的异常 API 请求，开始探测平台接口与账号相关功能。                                           |
| 8 月 27 日 02:36:09    | 这次异常活动第一次使用团队管理员的 Zeabur Legacy API Key，查询账号及 AI Hub 信息。                      |
| 8 月 27 日 02:37:57    | 第一次通过上述管理员账号创建 AI Hub 访问密钥。                                                          |
| 8 月 27 日 03:53:50    | 第一次读取项目环境变量的名称和值，请求使用了该管理员的 Zeabur Legacy API Key。                          |
| 8 月 27 日 05:26 起    | 使用管理员的 Zeabur Legacy API Key 列出内部项目与服务，继续探测内部配置。                               |
| 8 月 27 日 05:39:28    | 读取一项内部服务的环境变量，其中包含随后遭使用的 AWS 访问密钥。                                         |
| 8 月 27 日 05:40:15    | 同一来源开始使用相关 AWS 密钥，向 AWS 发出身份确认请求。                                                |
| 8 月 27 日 05:42:36    | 读取内部管理服务的配置，其中包含之后遭使用的高权限 AWS 密钥。                                           |
| 8 月 27 日 05:45:57    | 同一来源开始使用 AWS root 密钥，向 AWS 发出身份确认请求。                                               |
| 8 月 27 日 05:46:34    | 开始以该 root 身份枚举云端资源，相关请求成功。                                                          |
| 8 月 27 日 06:08:56    | 东京共享集群中创建了目前确认最早的异常一次性任务。                                                      |
| 8 月 27 日 07:26:25    | 东京共享集群出现高权限变更：一个服务账号被授予集群管理员权限。                                          |
| 8 月 27 日 07:54       | 数据库出现目前确认最早的入侵记录。                                                                      |
| 8 月 27 日 11:52 起    | 生产环境数据库出现项目环境变量遭大量读取的记录。                                                        |
| 8 月 28 日 02:34       | 收到第一封反馈，反映 API 密钥遭到盗用。                                                                 |
| 8 月 28 日 08:53       | 发出第一封紧急通知；当时因证据不够完整，对影响范围的判断有误。                                          |
| 8 月 28 日 17:03       | 发出第二封通知。                                                                                        |
| 8 月 28 日             | 调查期间预防性暂停 AI Hub，目前仍维持停用。                                                             |
| 8 月 30–31 日          | 与 AWS 就事件进行沟通，持续强化安全措施并核查补偿申请。                                                 |
| 8 月 31 日至 9 月 3 日 | 向相关机关提供调查说明，并扩大审计与取证数据的保存范围。                                                |
| 9 月 4–5 日            | 公布阶段性处置结果：切断已确认的事件路径、完成内部凭证轮换，并持续加强监控。                            |
| 9 月 7 日              | 发布[重大安全升级](/changelogs/security-update)，说明环境变量与 SSH 凭证的保存方式及 SSH 连接记录功能。 |
| 截至本报告更新         | 完成事件中相关活动与凭证来源的比对，持续检查跨系统记录并调整安全措施。                                  |

此前发布的进度更新可在[事件状态页](https://status.zeabur.com/incident/1037896)查阅。

## 支持与补偿

如需协助，或发现异常访问、不明费用，请通过 [Zeabur Support](https://zeabur.com/support) 与团队联系，我们会协助核对相关记录与后续处置。为降低相关凭证再次遭到使用的风险，联系前请先撤销相关凭证，并仅提供脱敏后的标识信息；请避免在支持工单或公开渠道中提供完整且仍然有效的密钥、密码或其他凭证。

若第三方 AI 服务的 API 密钥因本次事件遭到未经授权使用并产生额外费用，请通过支持工单提出补偿申请。团队会协助核对服务商的使用记录、异常时段与费用，并说明核查结果及补偿安排。

## 结语

尽管相关访问路径已及时切断，受影响的用户仍需投入额外的时间与精力更换凭证、检查服务并核对账务。对于本次事件造成的风险及处理负担，Zeabur 团队在此再次致以诚挚的歉意。我们将继续完成支持、补偿与本文所列的改善措施，后续进度也将通过事件状态页与相关公告发布。

Zeabur 团队
