安全模型

手机是运行中会话的远程键盘

这句话就是整个安全模型的核心。下面把它拆开讲清楚。

Joint 可以做什么

  • 读取运行中 run 会话的终端画面
  • 把手机上的输入写进本地 PTY
  • 发送方向键、Tab、Esc、Ctrl+C 等控制键
  • 远程中断或推进正在执行的命令
只有你主动用 joint-notify run 起来的会话会被同步;未启动的终端不会被读取或控制。

已有保护

  • 登录/配对验证码只保存 HMAC 摘要,不存明文
  • 验证码最多 5 次猜测,超过即作废
  • 按 IP 限流
  • 设备令牌可随时吊销,吊销后 WebSocket 立即断开
  • 不同设备、不同 sessionId 的会话互相隔离
  • 手机端令牌存放在系统安全存储中

已知限制

  • 后端默认监听 http://,生产部署必须自行配置 HTTPS/WSS
  • 用户令牌有效期较长(180 天)
  • 暂无服务端用户令牌吊销名单
  • 手机账号泄露意味着运行中的终端可能被他人控制
  • 实时会话注册表在内存中,后端重启会断开会话

安全披露

  • 披露邮箱:security@joint.dev
  • 我们会在 72 小时内首次回复,并在修复后同步进展
  • 支持的版本:主分支及最新一次发布
  • 请不要在公开 issue 中附带令牌、后端地址或终端录屏