安全
我们希望 Personal Device Bridge 赢得的信任,是您可以亲自验证的,而不只是我们的承诺。本页介绍您的数据如何受到保护、哪些部分已经审查过、哪些还没有、如何验证您下载的软件,以及如何向프로젝트팀포유 (Project Team For You)报告安全问题。
用通俗的话说明数据如何受到保护
配对从电脑上显示的二维码开始。二维码中包含一个两分钟后失效的一次性密钥,因此只有真正看到屏幕的设备才能完成配对。随后两台设备会显示相同的 6 位数字,由您确认两者一致。
- 每个连接都使用 Noise 协议(X25519、ChaCha20-Poly1305、BLAKE2s)进行端到端加密。每台设备都有一把永不离开本机的专属密钥,设备之间依靠这把密钥相互识别,而不是依靠 IP 地址、名称或账号。
- 每个连接、每条数据流都使用全新的密钥(前向保密):即使日后密钥被盗,也无法解密此前记录的通信。
- 加密位于网络层之上,因此无论是在 Wi-Fi 中、通过互联网(QUIC、TCP 或 WebRTC),还是经由我们的会合服务,保护方式都完全相同。会合服务只转发它无法读取的密封消息。
- 完成配对并不等于拥有全部权限:每台设备只能获得您授予的权限,远程输入和摄像头在每次会话中都需要您的同意。
- 收到的文件、链接和剪贴板数据在使用前都会经过检查:无法逃出下载文件夹,危险类型的链接会被拒绝,大小也有上限。
完整的技术规范和威胁模型记录在我们的安全文档中,可提供给研究人员和审计人员。
审计状态
我们宁可说得准确,也不夸大其词:
- 内部安全审查:已完成。我们依据成文的威胁模型审查了设计、配对、会话加密、权限和输入校验,各项安全规则都由每次变更都会运行的自动化测试覆盖。
- 自动化检查:每次变更都会检查依赖项的安全公告和许可证;读取不可信输入的部分每周进行模糊测试。
- 外部审计:计划在 1.0 版本之前进行,目前尚未开展。完成后,我们会在本页公布审计机构、审计范围和发现问题的摘要。
在此之前,Personal Device Bridge 仍是预览版。将其用于高度敏感的数据之前,请考虑这一点。
验证您下载的文件
下载的文件是否可信,您不必只听我们的一面之词:
- 校验和:每个版本都附带覆盖全部文件的 SHA256SUMS 文件,您可以确认手中的文件与我们发布的完全一致。
- 可复现构建:Linux 命令行工具采用确定性构建。任何拥有对应发布标签源代码的人都可以重新构建,并得到逐位相同的文件;自动检查会在不同环境中构建两次,只要有一个字节不同就判定失败。
- 构建来源证明:我们的发布工作流已配置为给每个文件附加带签名的 SLSA 来源证明(Sigstore),记录它由哪个工作流、哪个提交生成,可用“gh attestation verify”命令验证。源代码仓库公开后 GitHub 才会启用此功能,启用时我们会在本页告知。
- 代码签名:我们的发布流水线会为 Windows 程序和安装包加上 Authenticode 签名(Azure Artifact Signing);运行前可在文件“属性”→“数字签名”中查看发布者。
Windows 和 Android 版本目前还不能复现构建,相关工作已在计划中。适用于 bash 和 PowerShell 的分步验证说明收录在可复现构建指南中,可应要求提供。
持续测试
所有读取来自其他设备或网络数据的解码器——消息信封、配对链接、设备发现广播、文件名以及各功能的消息——每周都会用 libFuzzer 进行模糊测试,输入数以百万计的畸形数据,以发现崩溃和失效的安全检查。
此外,每次变更都会在 Windows 和 Linux 上运行单元测试、集成测试和端到端测试,其中包括两个真实进程通过网络完成配对并传输文件的测试。
如何报告
请发送邮件至 projectteamforyou@gmail.com,主题写为“[SECURITY] 简短标题”,使用韩语或英语。请包含以下内容:
- 受影响的应用或组件及其版本;
- 问题是什么,攻击者可以借此做什么(欢迎附上 CVSS 向量);
- 分步复现方法或概念验证,以及您测试时使用的平台。
请不要通过公开的 Issue 或社交媒体报告漏洞。
加密:我们尚未公开 PGP 密钥。公开后,密钥将放在本网站的 /.well-known/ 目录中,并写入 security.txt (personaldevicebridge.com/.well-known/security.txt)。在此之前,如果您的报告包含敏感的利用细节,请先发送一封不含这些细节的简短邮件,我们会与您商定安全的沟通渠道。
我们的源代码为专有软件,不对外开放。如果您为研究或确认问题需要查看源代码,请向我们申请,我们会逐一审核。
报告之后的处理流程
- 我们会在 72 小时内确认收到您的报告。
- 我们会在 7 天内完成分级——判断有效性、严重程度和受影响的版本——并在问题解决前至少每 14 天向您通报一次进展。
- 自分级起的修复目标:严重(Critical)30 天内(尽可能在 7 天内提供缓解措施),高危(High)60 天内,中危(Medium)90 天内,低危(Low)在后续的常规版本中修复。
我们是一个小团队。如果无法按目标完成,我们会告诉您原因以及预计的修复时间。
供安全工具使用的联系方式
我们的联系方式也以标准的机器可读格式(RFC 9116)发布在 security.txt (personaldevicebridge.com/.well-known/security.txt) 中,并指向本页。我们使用韩语和英语答复。