Ubuntu 更新过程如何防范“中间人”攻击?

Ubuntu 更新过程如何防范“中间人”攻击?

可能重复:
针对包和脚本有哪些安全策略?

最初我想知道如何保护 Ubuntu 更新过程免受中间人篡改。我问了这个问题: 是否可能通过 Ubuntu 更新感染病毒/rootkit?[关闭]

它被关闭为重复,但所谓的重复涵盖了一些完全不同的主题(例如 cd/闪存驱动器自动运行等如何影响安全性等)。所以我重新发布了我的具体问题。如何确保更新过程免受中间人攻击?

我觉得这个问题并没有真正涵盖:

答案1

Debian(Ubuntu 的前身)已经推出安全设施或者apt-secureUbuntu 实现了这一点。据我所知,这个 SecureApt 是一种使用 md5sum 检查来确保软件包完整性的方法。

apt-get update运行时,packages.gz会下载一个包含存储库中软件包的 md5sum 哈希值的文件(安全嗎??)然后,当从 repo 安装包时,将根据 md5sum 检查下载的包的 md5sum packages.gz,只有匹配时才会安装。

因此,篡改或操纵包装应该导致“不匹配”的 md5sum 比较。

但是,这并不能解释如何验证在系统安装或“package.gz”文件传输时无法知道的软件包更新。

更新

我找到了更多信息在 Ubuntu 的 SecureApt 帮助页面中

关于更新后的流程及其安全影响:

  • 有一个发布文件其中包含包的 md5sum(也许这个文件是或者包含前面提到的 packages.gz)。
  • 发布文件通过使用 gpg 密钥签名来相当安全地传输。
  • 每次更新软件包时,发布文件都会更新。这解释了如何安全地进行更新。(1. 使用软件包的 md5hashes 传输 gpg 签名的发布文件,2. 使用发布文件的可信 md5sums 传输和检查(更新)软件包)

相关内容