Harden Windows package paths (T-605)
This commit is contained in:
@@ -30,7 +30,8 @@
|
||||
## 3. 安全纪律(违反即安全事故)
|
||||
|
||||
- 任何下载内容未通过 SHA-256 + 签名验证,**不得解压执行**;清单验签失败拒绝,不回退到未验证内容。
|
||||
- ZIP 处理必须拒绝:绝对路径、`../` 穿越、符号链接逃逸、entrypoint 指向 payload 外、无上限解压(文件数/体积/压缩比)。
|
||||
- ZIP 与软件包路径必须使用 `core/internal/safepath` 的共享 Windows 安全相对路径策略,拒绝绝对路径、`../`/dot-space 归一化穿越、首尾 ASCII 空格、尾随句点、DOS 设备名、Windows 禁止字符、符号链接逃逸和 entrypoint 指向 payload 外;native 输出路径还必须验证仍在 destination 内。Catalog/storage/app.json/files.json 不得各自复制一套路径规则。
|
||||
- ZIP 解压必须保留文件数、展开体积和压缩比硬上限。
|
||||
- 安装/更新只走 `staging → current → backup` 原子流程;任何写 `current/` 的捷径都不允许。
|
||||
- 程序更新不得触碰 `data/` 与 `licenses/`。
|
||||
- 不强杀用户进程;更新前等待正常退出,超时取消。
|
||||
|
||||
Reference in New Issue
Block a user