| 版本 | 支持安全修复 |
|---|---|
| 0.2.x | ✅ |
| < 0.2 | ❌ |
请勿通过公开 Issue 报告安全问题。
请通过 GitHub 的 Private Vulnerability Reporting 提交报告,你需要一个 GitHub 账号(免费即可)。
报告请包含:
- 受影响的版本
- 漏洞描述与复现步骤
- 潜在影响
- 你的联系方式(可选)
我通常会在 48 小时内响应,7 天内给出修复方案或缓解措施。
ssh-driver 是一个本地开发工具,请了解以下设计取舍:
主机密码以明文保存在 ~/.ssh-driver/config.json(文件权限 0600)。
这是为了让用户能在控制台随时查看和修改密码。这意味着:
⚠️ 不要把~/.ssh-driver/config.json提交到 Git 仓库⚠️ 不要把它放在云同步目录(iCloud Drive、OneDrive、Dropbox 等)⚠️ 不要在共享机器上使用,除非该机器只有你一个人登录- 导出的备份文件(
/api/io/export)已脱敏为***,可以安全分享
ssh-driver console 会在 127.0.0.1:7843 启动一个 HTTP 服务:
- 默认仅监听回环地址,局域网内其他机器无法访问
- 服务本身没有鉴权,任何能访问该端口的进程都能读写你的 SSH 配置
- 如果用
--host 0.0.0.0改成对外监听,请自行配置防火墙或反向代理做访问控制
ssh-driver exec 会在目标主机上执行你提供的任意 shell 命令:
- 它等同于把 SSH 客户端的能力开放给调用方
- 如果 AI Agent 拿到了不可信的输入,务必先确认命令内容再执行
- 建议遵循最小权限原则:不要用 root 账号做日常操作
- 用私钥代替密码,并给私钥设置
600权限 - 服务器侧禁用密码登录,只允许密钥认证
- 为不同用途创建不同的 SSH 用户,配合
sudo按需提权 - 审查 AI 生成的命令,尤其是涉及
rm、dd、chmod的操作 - 定期轮换密码 / 私钥