2019年6月,有不知名攻击者对 GPG SKS 密钥同步服务器投毒,详情见 SKS 网络和 GPG 的核心维护者 rjhansen的解释。 根据 rjhansen 的说法,投毒已成既成事实,该隐患短期内无法从SKS或OpenPGP协议中移除。 可能产生的严重后果有许多,比如说,如果有人再次对各大 Linux 发行版包管理器的 GPG 证书投毒,将导致受影响的 Linux 系统无法执行任何包更新。 因为关于这个重大事件的中文资料几乎没有,特此综合英文资料做一综合评述。 熟悉 GPG 的朋友从 rjhansen 文中已经可以明白前因后果。在开始讨论之前,先对不熟悉此事件的读者做一下科普。 什么是 GPG?为什么 GPG 证书服务器被破坏影响很大? GPG 是 GNU 开源版本的 PGP,是一个加密软件。可以用于加密、签署和验证身份。在开源软件世界中广为采用,尤其是 GNU 生态圈内的各大 Linux 发行版和软件的包管理器都广泛使用 GPG 对重要文件进行签名,以防用户下载到冒名恶意软件。 因此,如果 GPG 不能正常工作,不能正常从其证书服务器拉取证书,可能导致一系列依赖 GPG 的软件出现故障,比如说无法正常升级软件包。 什么是 SKS 公钥服务器同步网络? GPG 与 SSL 证书系统不同,它不依赖一个权威的第三方来为每一个证书提供背书。相反,每个用户应该自行选择信任哪些证书。那么,如何解决无法见面验证时的 TOFU (trust on …