docs: 文档改为英文,并修正过时内容
Some checks failed
Tests / test (push) Has been cancelled

不是翻译 —— 多数文档描述的行为已经不存在了。

先修一个更基本的问题:我们不拥有 u-claw.org 域名,那是上游的。所以之前写在
README、诊断包提示、联系方式里的 help@u-claw.org 全都会把用户的问题发给
上游 —— 一个没有理由回复的人。改为指向我们自己的 issue tracker,并加断言
禁止再出现指向该域名的支持入口。

重写(内容过时,不是语言问题):
- install/README.md —— 还写着 10 个中国技能、DeepSeek 优先、国内镜像。
  现在按实际流程写:技能读 manifest、模型菜单 Gemini 优先、bundle 有
  SHA256 校验。并如实写明 curl|bash 在受管企业电脑上会被 EDR 拦。
- CLAUDE.md 的模型配置整节 —— 还在描述虾盘云首选卡片和 12 个 provider,
  那个界面已经换成单框 Key 输入了。
- SECURITY.md —— 安全报告原本指向上游维护者个人邮箱。fork 之后那条路由
  是错的:漏洞会发给写不了这份代码、也修不了的人。
- CONTRIBUTING.md —— 补上 fork 关系、pre-push 钩子怎么装、以及
  `node --test tests/` 为什么不能用。

翻译并保留:
- bootable/README.md、TROUBLESHOOTING.md —— 面向用户,顺带把
  「国内镜像」「小米/华为 BIOS 按键」等换成目标市场的实际情况

HANDOFF.md 重写为一份事故复盘:原文一半是过时的一次性交接笔记(引用的
website/guide.html 已不在本仓库),另一半是 persistence.dat 未格式化导致
启动失败的排查记录 —— 后者有长期价值,尤其是「读 offset 1080 的两字节
验证 ext4」这个判断方法,已同时写进 bootable/README.md。

bootable/IMPROVEMENTS_SUMMARY.md 保留中文,加了说明:它是上游 fork 前的
历史改进记录,没人引用,描述的是已完成的工作而非当前行为。翻译它反而会
让人误以为是现行文档。

新增 skills/en/uclaw-help —— 把「怎么用、东西在哪、出问题怎么办」做成
内置知识,每个角色都装。方案 C10.8:能问的产品才是不需要学的产品。
This commit is contained in:
2026-08-17 19:12:07 +08:00
parent 46a1218fc8
commit 3221856d50
20 changed files with 937 additions and 883 deletions

View File

@@ -1,61 +1,71 @@
# 安全策略 / Security Policy
# Security policy
感谢你关注 U-Claw 的安全性。本文档说明如何向我们报告安全漏洞,以及我们当前支持的版本。
## Reporting a vulnerability
## 报告漏洞 / Reporting a Vulnerability
**Please do not put details in a public issue.**
**请不要在公开 issue 里发布安全漏洞细节。**
Open a report at
https://gitea.fanghe.it.com/zhenghy/u-claw/issues — mark it clearly as a
security report and keep the details minimal until we can arrange a private
channel.
如果你发现了 U-Claw 的安全问题,请通过以下任一渠道私下联系:
> **This is a fork.** Upstream is `github.com/dongsheng123132/u-claw`. If the
> issue is in code we inherited unchanged, it affects their users too — please
> tell them as well. If it is in something this fork changed (the launcher, the
> i18n layer, the skill installer, the key-check endpoint, the self-heal
> routines), it is ours.
>
> We do not yet have a dedicated security address of our own. `origin.json`
> records that gap; until it is filled, the issue tracker is the route.
- 邮件:`hefangsheng@u-claw.org`(建议附 PoC、影响范围、复现步骤
- GitHub 私密漏洞报告:在 [u-claw 仓库](https://gitea.fanghe.it.com/zhenghy/u-claw) 的 Security 标签页 → "Report a vulnerability"
We will acknowledge within **3 working days** and give a first assessment within
**14 days**. Please give us a chance to fix it before disclosing publicly.
我们会在 **3 个工作日内** 确认收到,并在 **14 天内** 给出初步评估。请允许我们在公开披露前修复问题。
### What helps
### 报告内容建议
- Which module — `portable/`, `install/`, `bootable/`
- Version or commit hash
- How it is triggered, and from where: local, LAN, or the internet
- Steps to reproduce, or a proof of concept
- What you think the fix looks like, if you have a view
- 受影响的模块portable / install / bootable / u-claw-app
- 受影响的版本或 commit hash
- 触发条件、攻击面(本地 / 局域网 / 互联网)
- 复现步骤或 PoC 代码
- 你建议的缓解或修复方向
## What is in scope
## 支持的版本 / Supported Versions
- Command injection, path traversal, arbitrary write or code execution in
U-Claw's own scripts
- Injection through the loading or writing of `data/.openclaw/openclaw.json`
- Launchers (`START HERE - *`, `lib/start.mjs`) being hijacked through a
malicious directory name or environment variable
- Man-in-the-middle exposure on the one-line install path
(`curl | bash`, `irm | iex`)
- Privilege escalation in what the bootable USB scripts produce
- The key-check endpoint (`/api/test-key`) — it handles API keys server-side
- The diagnostics report leaking a secret it should have redacted
| 模块 | 版本 | 状态 |
|------|------|------|
| `portable/` | 当前 main | ✅ 接受报告 |
| `install/` (`install.sh` / `install.ps1`) | 当前 main | ✅ 接受报告 |
| `bootable/` (Linux U 盘) | 当前 main | ✅ 接受报告 |
| `u-claw-app/` Electron | 当前 main | ✅ 接受报告 |
| 历史 release tag | — | ⚠️ 仅做严重等级评估,不一定回滚补丁 |
## What is not
我们暂未发布稳定版本号,所有修复直接在 main 分支推送。
- **Upstream dependencies** — Node.js, OpenClaw, Electron, Ventoy, Ubuntu.
Report those to their projects; we track and upgrade versions.
- **A user publishing their own API key** in a screenshot or a public repo.
- **Physical access to the drive.** If someone has the drive, they have the
data — that is the trade a portable product makes, and it is stated plainly
in the README rather than defended against.
- **What an attacker can do once they already have admin or root** on the
machine.
## 范围 / In-Scope vs Out-of-Scope
## Supported
### 在范围内(请报告)
| Module | Status |
|---|---|
| `portable/` | current `main` — reports accepted |
| `install/` | current `main` — reports accepted |
| `bootable/` | current `main` — reports accepted |
| `u-claw-app/` | **deprecated 2026-06-19**, no longer built or published |
| older tags | severity assessed, but no backported patches |
- U-Claw 自身脚本中的命令注入、路径穿越、任意写入、代码执行
- `data/.openclaw/openclaw.json` 配置加载/写入逻辑中的注入
- 启动脚本(`Mac-Start.command` / `Windows-Start.bat` / `start.sh`
在恶意目录名/环境变量下被劫持的可能
- 一键安装 (`curl | bash` / `irm | iex`) 链路上的 MITM 风险
- Bootable USB 制作脚本生成的产物在 Linux Live 环境下的提权问题
There are no stable version numbers yet; fixes go straight to `main`.
### 不在范围内
## Credit
- 上游依赖Node.js / OpenClaw / Electron / Ventoy / Ubuntu的漏洞 —
请直接报给上游项目;我们只跟踪并升级版本。
- 用户主动把自己的 API Key 写到公开仓库 / 截图泄露,不属于本项目缺陷。
- 物理接触 USB 后的所有攻击(含偷换 USB、键盘记录等属于硬件安全场景。
- 在用户已经获得 admin/root 权限的情况下能做的进一步动作。
## 致谢 / Acknowledgements
发现并负责任披露安全问题的研究者,将在修复发布的 commit message 和 release notes 中署名感谢(除非你要求匿名)。
---
> 本策略借鉴了 GitHub 推荐的开源安全披露格式,未来会随项目成熟度更新。
Anyone who reports responsibly is credited in the fixing commit and the release
notes, unless you would rather not be.