| 版本 | 是否接收安全修复 |
|---|---|
| 1.0.x | ✅ |
V1 首发为 0.1.0。此前仓库为私有状态,无公开发布版本。
优先走 GitHub Security Advisories(仓库 → Security → Advisories → Report a vulnerability)。 这是一对一私密通道,在修复发布前不会公开,适合还没修好的问题。
如果问题已经公开、不涉及未修复的攻击面,直接开普通 issue 即可。
上报时请附上:
- 能触发的版本 / commit
- 你的平台(macOS 版本 / Windows 版本)——本工具双平台,行为可能不同
- 复现步骤,以及预期与实际行为的差别
- 影响面:是信息泄露、误删,还是别的
以下几条是设计上的硬约束,不是当前实现的偶然状态。偏离它们的改动本身就算安全问题:
- SSH 私钥内容永不进入数据流。指纹只走
ssh-keygen -lf,「是否加密」只靠读文件头 512 字节做子串判断。私钥内容不落缓存、不进detail、不传前端。 当前 SSH 扫描器未注册进侧栏,运行时不接触任何凭据。 - AI 工具目录只读文件名,不读任何文件内容(
ai_tools.rs里禁止fs::read/read_to_string/File::open)。 凭据可能藏在auth.json/config.toml/settings.json任意一处,逐个文件过滤堵不完;不读内容是从根本上消除这条路径。
本工具不监听端口、不启动 HTTP 服务、没有跨域攻击面。这是选 Tauri 而不是 Web 的理由。 任何引入网络监听的改动都违背这个前提。
只有 repos / toolchain / ai_tools 三组接了删除入口,执行全部走 trash::delete(废纸篓,可恢复),绝不硬删。
服务端不信任前端传来的 id,回到白名单 / 当前目录重新复核后才删。
- 整仓删除前查未推送提交与未提交改动,有则拒绝。
- 构建产物删除清的是
node_modules/target这类可再生目录,不动源码与.git。 - ai_tools 的会话删了不会再生——这不是缓存,确认弹窗里单独写明了。
其余扫描分组只统计体积与元数据,不写任何东西。
- 扫描结果与
du不一致——口径不同(dir_size_excluding会按规则排除部分子目录),见docs/known-limits.md。 - 总占用报不满——SSH 与 Docker 不进 V1 是有意接受的取舍,账面约覆盖 94%,不是待修 bug。
- 未签名构建的 Gatekeeper 警告——macOS 未签名应用的正常行为。
个人维护的项目,不承诺固定 SLA。收到报告后会先确认收到并给出初步判断; 确认有效的问题会排进修复并发布补丁版本。