4.7 KiB
4.7 KiB
🔐 guanghu-token 令牌审计报告
审计执行者:铸渊(ICE-GL-ZY001) 审计时间:2026-03-24T15:42+08:00 指令来源:霜砚签发 · ZY-PAT-AUDIT-2026-0324-001
Phase 1 · 排查结果
1.1 跨仓库令牌清单
共发现 3 个与「子仓库桥接 / 跨仓库访问」直接相关的 Secret:
| # | Secret 名称 | 引用次数 | 用途分类 |
|---|---|---|---|
| 1 | MAIN_REPO_TOKEN |
4 次 | 联邦桥接 + 子仓库拉取 |
| 2 | CROSS_REPO_TOKEN |
2 次 | persona-studio 跨仓库同步 |
| 3 | DEPLOY_GITHUB_TOKEN |
1 次 | Drive 桥接部署 + Git 提交 |
1.2 各 Secret 详细用途
① MAIN_REPO_TOKEN ⭐ 最可能对应 guanghu-token
引用文件:
| 文件 | 用法 | 说明 |
|---|---|---|
federation-bridge.yml (×3) |
env: MAIN_REPO_TOKEN → Node 脚本 |
联邦桥接:向 qinfendebingshuo 组织下的子仓库分发公告/同步状态 |
pull-sync-awen.yml (×1) |
env: GH_TOKEN → git clone URL |
子仓库拉取:git clone https://x-access-token:${GH_TOKEN}@github.com/WENZHUOXI/guanghu-awen.git |
判断依据:
- 用途完全匹配「开发者子仓库桥接」
federation-bridge.yml= 联邦桥接核心 workflowpull-sync-awen.yml= 子仓库同步核心 workflow- 这就是 guanghu-token 对应的 Secret
② CROSS_REPO_TOKEN
引用文件:
| 文件 | 用法 | 说明 |
|---|---|---|
sync-persona-studio.yml (×2) |
env: CROSS_REPO_TOKEN → Bearer Token |
向 qinfendebingshuo/persona-studio 发送 repository_dispatch 事件 |
用法详情:
curl -X POST \
-H "Authorization: Bearer $CROSS_REPO_TOKEN" \
https://api.github.com/repos/qinfendebingshuo/persona-studio/dispatches
判断:此 Secret 可能也使用同一个 PAT,需一并更新。
③ DEPLOY_GITHUB_TOKEN
引用文件:
| 文件 | 用法 | 说明 |
|---|---|---|
auto-deploy-drive-bridge.yml (×1) |
env: DEPLOY_GITHUB_TOKEN → Node 脚本 |
Drive 桥接部署后 git push 提交结果 |
判断:如果此 Secret 也使用同一个 PAT,需一并更新。
1.3 结论
guanghu-token最可能对应的 Secret 名称是MAIN_REPO_TOKEN理由:它专用于联邦桥接和子仓库拉取,完全符合「开发者子仓库桥接」的用途描述。
可能共用同一 PAT 的 Secret(建议一并检查):
CROSS_REPO_TOKEN— persona-studio 跨仓库同步DEPLOY_GITHUB_TOKEN— Drive 桥接部署
Phase 2 · 主控操作指引
更新步骤
- 进入仓库:
qinfendebingshuo/guanghulab - 导航至:Settings → Secrets and variables → Actions
- 找到并更新以下 Secret(粘贴新生成的 guanghu-token 值):
| 优先级 | Secret 名称 | 操作 |
|---|---|---|
| 🔴 必须 | MAIN_REPO_TOKEN |
点编辑 → 粘贴新令牌 → 保存 |
| 🟡 检查 | CROSS_REPO_TOKEN |
如果使用同一 PAT → 同步更新 |
| 🟡 检查 | DEPLOY_GITHUB_TOKEN |
如果使用同一 PAT → 同步更新 |
验证方法
更新后,手动触发以下 Workflow 验证:
| Workflow | 触发方式 | 预期结果 |
|---|---|---|
federation-bridge.yml |
Actions → 手动 Run workflow | 不报 401/403 |
pull-sync-awen.yml |
Actions → 手动 Run workflow | 成功 clone awen 仓库 |
sync-persona-studio.yml |
推送 persona-studio/ 目录变更 | 成功触发 dispatch |
Phase 4 · 安全扫描结果
硬编码令牌扫描
| 检查项 | 结果 | 说明 |
|---|---|---|
ghp_ 前缀扫描 |
✅ 安全 | 仅 dingtalk-bot/.env.example 有占位符 ghp_your_github_token_here(非真实令牌) |
github_pat_ 前缀扫描 |
✅ 安全 | 未发现任何匹配 |
glpat_ 前缀扫描 |
✅ 安全 | 未发现任何匹配 |
安全评估
- ✅ 所有令牌均通过
secrets.*引用,无硬编码 - ✅
.env.example使用占位符,无真实凭据泄露 - ✅ 跨仓库操作均有条件检查(如
if: env.CROSS_REPO_TOKEN != '') - ⚠️ 共发现 57 个 独立 Secret 在 Workflow 中被引用,建议定期审计
📝 执行回执
| Phase | 状态 | 完成时间 | 结果 |
|---|---|---|---|
| Phase 1 · 排查对应 Secret | ✅ 完成 | 2026-03-24T15:42+08:00 | MAIN_REPO_TOKEN = guanghu-token 主要对应 |
| Phase 2 · 通知主控 | ✅ 报告已生成 | 2026-03-24T15:42+08:00 | 操作指引见上方 |
| Phase 3 · 验证修复 | ⏳ 待人类操作 | — | 需主控更新后触发验证 |
| Phase 4 · 安全扫描 | ✅ 完成 | 2026-03-24T15:42+08:00 | 无硬编码令牌,安全 |
🔧 铸渊 · ICE-GL-ZY001 📅 2026-03-24T15:42+08:00