Hey Look!如何保护您
- 服务器必须提供TLS或STARTTLS。只提供未加密连接的服务器无法添加。
- Google和Microsoft登录在服务商自己的窗口中使用带PKCE的OAuth 2.0。应用保存的是令牌,而不是您的密码。
- 密码、OAuth令牌和AI密钥保存在系统的凭据存储中。
- OpenPGP私钥是例外:它们存放在应用的数据库中,用您的密码短语加锁,不在凭据存储里。多次输入错误的密码短语后,需等待30秒才能解锁。
- 邮件显示在一个不运行脚本、采用严格内容策略的框架中,没有iframe、object、embed或表单。
- 远程图片在您允许之前一直被阻止,跟踪像素因此无法加载。
- 如果链接上显示的文字是一个网址,但实际指向另一个主机,会请您确认。这不是通用的钓鱼检测。
- 打开可执行文件或脚本附件前会先询问。
- “信任此证书”默认关闭。它是按账户设置的选项,会为该账户关闭证书检查。
- 应用自己的窗口在内容安全策略(Content Security Policy)下运行:只运行应用自己的脚本(没有内联或远程脚本),窗口只连接应用本身。
- 从网页或其他程序粘贴的文本会被清理:脚本、表单和事件处理程序不会带入,写邮件时也不会下载远程图片。
更新经过签名
应用会到GitHub检查是否有新版本,并且只接受形如https://github.com/thnonl/hey-look/releases/download/<tag>/<file>的下载地址。它会用应用内置的公钥验证minisign签名,并在一个可以取消的5秒倒计时后重启。Windows上会自动安装更新;macOS和Linux需要您的许可。
安装程序尚未经过代码签名
Windows SmartScreen和macOS Gatekeeper会在首次启动时发出警告,因为Windows和macOS的安装程序没有经过代码签名,macOS版也没有经过公证。首次启动的步骤见下载页面。我们希望将来能为安装程序签名;想了解怎样才能帮上忙,请看支持。macOS应用使用项目自己的自签名证书签名(背后没有Apple账户);这让钥匙串在更新后仍能认出这个应用,但这不是公证。
报告漏洞
请通过GitHub私下报告安全问题:打开github.com/thnonl/hey-look/security并选择“Report a vulnerability”(报告漏洞)。请不要公开提交议题。您也可以发邮件到namth.onl@gmail.com。Hey Look!是业余时间做的,所以回复可能要等一阵子,也不承诺任何响应时间。
已知限制
- 当发件人地址与已存储的组织者一致时,日历邀请的更新和取消才会被接受。不做DKIM、SPF或S/MIME检查,因此伪造的发件人地址可能会更改或取消您收到的事件。邮件服务商通常会拒绝这类伪造。
- OpenPGP尚未与其他OpenPGP软件做过互通测试。
- AI助手会把您要询问的文字发送到您配置的端点,包括解密后的OpenPGP内容。对该端点而言,这些内容不是保密的。
- “无分析”的说法是通过查看源代码确认的,而不是靠网络抓包。
- 不声称做过任何第三方安全审计。
- 标为“机密”的邮件只在Windows和macOS上对屏幕截图和录屏隐藏;它无法阻止用相机拍摄屏幕。