前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >APT 为什么不使用 HTTPS 协议?

APT 为什么不使用 HTTPS 协议?

作者头像
Seebug漏洞平台
发布2019-03-07 10:31:39
7900
发布2019-03-07 10:31:39
举报
文章被收录于专栏:Seebug漏洞平台Seebug漏洞平台

原文:https://whydoesaptnotusehttps.com/

作者:Chris Lamb

译者:Nanako@知道创宇404实验室

(这篇文章代表了一段时间前,特别是在CVE-2019-3462之前的情形。它并不代表我的个人意见,也不代表Debian / Ubuntu。)

tl;dr

https用于防止入侵者窃听到您与您访问的网站之间的通信,以及避免在您不知情的情况下修改数据。

然而,通过APT命令获取的文件往往都有自己的签名以通过系统的检查。

您的计算机根据一组已存储的可信密钥检查这些签名。如果缺少有效签名或者密钥不可信[1],则APT会拒绝下载该文件。这样可以确保您安装的软件来自您的授权,并且未被修改或替换。

如果下载服务器的磁盘上软件包发生了恶意篡改,https是无法检测出来的。因此也没有必要“安全的”传输一个受损的软件包。

隐私

https通常不会为获取数据包提供重要的私密性。由于窃听者通常可以看到您正在通信连接的主机,如果您正与发布镜像的网络进行连接,则很明显您在进行下载更新。

此外,即使通信是经过加密的,也不难根据传输大小确定要下载的文件[2]。因此,https只适用于从那些提供类似的,或大小相同的包的服务器上进行下载。

其实更应该关注的问题并不是加密,而是确保您正在安装的文件未被修改过。

过度信任CA

有超过400个“证书颁发机构”可以为任何域颁发证书,其中很多证书机构没有有效的安全记录,还有一些明确被政府控制[3]。

这意味着https对于发布镜像网络上的攻击目标提供了微乎其微的保护,甚至没有任何保护。您可以限制APT可以接收的有效证书集合,但这容易产生错误,对现有的公钥方案来说某些额外的麻烦是不值得的。

为什么不提供HTTPS呢?

您所用的发行版可以使用现有方案对文件进行加密签名,另外还可以通过https为文件提供“深度防御”。

然而,通过SSL提供一个巨大的全球镜像网络不仅是一项复杂的工程任务(需要私钥的安全交换和存储)。如上所述,它意味着会对最终用户的安全性和隐私级别产生误导性。

切换到https还意味着您无法利用本地代理服务器来加快访问速度,而且还将禁止多种类型的P2P 镜像,其中文件存储在不受您分发控制的服务器上。这将对远程区域的用户产生不同程度的影响。

重放攻击

简单签名机制存在的问题是,它不能保证您看到的是最新版本的存档。

这可能会导致重放攻击,攻击者将存档替换为较早的未经修改的版本,阻止APT注意到那些会被利用的安全更新。

为了解决这个问题,APT存档包含一个时间戳,在此时间戳之后的所有文件都被认作是旧文件[4]。

更多信息

在SecureAPT wiki页面上可以找到更多技术细节 。

?

脚注

  1. 显示发布:无法验证以下签名,因为公钥不可用。
  2. 如果通过(假设)apt-transport-tor使用Tor,甚至有可能出现这种情况。 https://retout.co.uk/blog/2014/07/21/apt-transport-tor
  3. 例如,请参阅在StackOverflow上的我应该信任哪些受信任的root证书颁发机构。 https://security.stackexchange.com/questions/53117/what-trusted-root-certification-authorities-should-i-trust
  4. 请参阅Debian Wiki上DebianRepository页面的Date,Valid-Until部分 。 https://wiki.debian.org/DebianRepository/Format#Date.2C_Valid-Until
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-01-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Seebug漏洞平台 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • tl;dr
  • 隐私
  • 过度信任CA
  • 为什么不提供HTTPS呢?
  • 重放攻击
  • 更多信息
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档