Skip to content

Security: TokenFlux/tf-cli

SECURITY.md

安全策略

漏洞报告

请通过仓库的 Security Advisories 提交安全问题,切勿公开发布 Issue。

提交的报告仅维护人员可见,相关漏洞修复并发布更新后会统一公开。

凭据安全机制

  • 权限控制:API Key 以明文保存于 credentials.json。Unix 文件权限为 0600;Windows 自 v0.9.0 起使用受保护的 DACL,仅允许当前用户、Administrators 和 SYSTEM 访问。这是本机访问控制,不是静态加密;若检测到权限过宽,启动时将自动收紧权限并给出警告。
  • 并发与恢复:配置写入使用跨进程锁,并拒绝覆盖其他进程已经修改的快照。登录与退出通过 .transaction.json 同步更新配置和凭据;该恢复日志含有 Key,与凭据文件采用相同的权限限制,事务完成后删除。进程中断后的下一次读取会先恢复未完成事务。
  • 防止进程泄露:禁止通过命令行参数传递 Key,避免敏感信息记录至 Shell 历史或被同机进程通过 ps 查阅。
  • 敏感信息脱敏:终端与日志输出中对 Key 统一执行掩码处理(如 sk-d61…5b1c),不提供明文打印完整凭据的命令。
  • 隔离与零代理:凭据仅通过进程环境(包括环境变量中的内联配置)注入指定子进程;tf 自身不作为本地代理、不转发流量、不记录任何会话及请求内容。
  • 无遥测:默认不收集、不上报任何遥测(Telemetry)数据。

安全边界与责任

  • POSIX 权限与 Windows DACL 无法防御以当前用户身份运行的恶意程序、系统管理员、未加密备份或运行期间的内存读取;离线磁盘安全依赖 FileVault、LUKS、BitLocker 等系统级磁盘加密。
  • tf 仅负责在启动时将凭据注入指定的 harness 子进程。子进程运行期间的外部请求与本地行为由该客户端自身实现决定;tf 不对其进行沙箱隔离或行为拦截。
  • CLI 参数 --host 支持自定义网关地址,请确保仅连接可信的 TokenRouter 或 TokenFlux 网关服务。
  • 网页导入的终端链接包含本次监听会话的 secret,供网页用 challenge/HMAC 验证当前 tf 监听,并可用 X-TF-Session-Proof 让终端确认页显示相同验证状态。直接打开网页时仍允许未验证的端口扫描和导入,但其它本机进程可能伪装服务并先于终端确认收到 Key;页面与终端都会警告该状态。终端确认只授权是否写入本地凭据。

There aren't any published security advisories