独立顾问兼安全合同工 Max Justicz 在 Debian、Ubuntu和其它相关 Linux 发行版本使用的 APT 高级别包管理器中发现了一个远程代码执行问题。
Justicz 表示,这个 APT 漏洞存在于版本 0.8.15 及以后的包管理器版本中,“可允许中间人网络(或恶意包镜像)在机器上以根权限执行任意代码安装任意包。该 bug 已于最新的 APT 版本中予以修复。”
另外,如 Yves-Alexis Perez 在 Debian 安全公告 DSA-4371-1 中详述得那样:“处理 HTTP 传输方法中 HTTP 重定向的代码并未正确清洁经由无线传输的字段。攻击者可利用该漏洞作为 API 和镜像之间的中间人,在 HTTP 连接中注入恶意内容。该内容之后被 API 识别为有效包,攻击者在后续以根权限在目标机器上执行代码。”
由于该漏洞 (CVE-2019-3462) 被描述为 Ubuntu Launchpad 存储库上“http 方法中的内容注入”,影响用于更新 OS 组件的工具包管理器,因此 Debian 安全公告建议用户在将 APT 更新至最新版本之前,采取额外措施避免系统遭利用。
安全公告指出,“由于漏洞存在于包管理器本身,因此建议禁用重定向以便阻止仅在此升级过程中的利用,方法是使用
apt -o Acquire::http::AllowRedirect=falseupdate
apt -o Acquire::http::AllowRedirect=false upgrade
如在 security.debian.org 上使用这种操作,将导致某些代理崩溃。在这种情况下,可将安全 APT 源转换为使用:debhttp://cdn-fastly.deb.debian.org/debian-security stable/updates main。”
如必须启动重定向之后才能更新 APT,用户也可根据 DSA-4371-1 安全公告中的URL 手动下载更新版本,检查哈希确保包未遭篡改,并在 dpkg-i 的帮助下安装。
APT 1.2.29ubuntu0.1、1.7.0ubuntu0.1、1.0.1ubuntu2.19 和 1.6.6ubuntu0.1 包以及 Debian 发行版本 APT 1.4.9 中已修复该 RCE 漏洞。
2016年12月,谷歌 Project Zero 团队的 Jann Horn 也发现了类似问题,后续已在 APT 版本 1.0.9.8.4 以及 1.4~beta2 中修复。
Horn 在报告中指出,易受攻击的 APT 版本“在验证 InRelease 文件上的签名时未正确处理出错信息。能够位于使用 InRelease 文件(清除签名的 Release 文件)的攻击者能够利用该缺陷规避 InRelease 文件的签名,从而导致任意代码执行问题。”
原创文章,作者:kepupublish,如若转载,请注明出处:https://blog.ytso.com/124041.html