如何安全验证Linux系统镜像并防范恶意篡改

本文详细介绍了Linux系统镜像的安全验证方法,包括校验和验证、数字签名检查及漏洞排查。通过实际案例演示如何检测恶意篡改的ISO文件,并提供额外安全建议如漏洞扫描和网络流量监控。

检查您的镜像

警告:本文中提到的技术和工具可能已过时,不适用于当前情况。然而,这篇博客仍可作为学习机会,并可能更新或集成到现代工具和技术中。

今天我将介绍在安装前验证ISO镜像的过程。

如果您在2月20日下载了Linux Mint 17.3 Cinnamon,有可能获取了带有恶意软件的ISO。Linux Mint团队在2月21日凌晨2点左右在其博客上发布通知,发现他们的网站被入侵,官方软件包被恶意版本的操作系统替换。被黑的ISO托管在absentvodka.com上,Mint团队表示可能会对与这个保加利亚网站相关的几个名称展开调查。

攻击后,网站被关闭以避免提供恶意ISO文件。在原始公告的评论中,Mint团队成员确认网站的WordPress博客是攻击者的入口点。公告发布前,linuxmint.com网站的转储在TheRealDeal上以85美元的价格提供。至少有一人购买了此转储并将配置文件发布在HackerNews上。

对于极度好奇者,恶意代码可在此gist中查看:https://gist.github.com/Oweoqi/31239851e5b84dbba894,它似乎用于设置僵尸网络。

那么,用户如何避免这种威胁?首先,要认识到无论提供产品的技术知识、专业性和良好意图如何,我们必须假设产品可能被入侵。因此,消费者有责任采取一切可能的步骤来验证我们获取的产品是我们认为的产品。以下是我通常在使用前验证操作系统镜像的几个步骤。接下来的内容相当偏执,并以Arch Linux发行版为例。我的目标有两个:一是了解我正在安装的系统及其当前问题,二是获得多个独立验证,确保即将安装的是合法版本。

了解您考虑安装的操作系统已知的漏洞。Arch Linux在此处列出其CVE(https://wiki.archlinux.org/index.php/CVE),大多数大型发行版都这样做。我还使用CentOS,为此我在此处检查CVE(https://access.redhat.com/security/security-updates/#/)。阅读后,我们可以看到两者都有一些未修补的漏洞(在撰写本文时),即最近新闻中提到的glibc漏洞。

接下来是校验和。我们现在可以下载文件,对于Arch Linux,有大量镜像,通常我选择一个在美国的镜像,并查看托管方是谁。在这种情况下,我选择kernel.org。进入kernel.org后,我们看到实际上是一个包含镜像、签名和另一组校验和的目录。

在这种情况下,我将从kernel.org下载x86_64 tarball。叫我偏执,但如果恶意实体获得了kernel.org和Arch Linux的访问权限(可能不太可能,但并非不可能),所以我不会从kernel.org下载签名和校验和,而是转到列表中的另一个镜像aggregate.org,并在那里下载SHA1校验和。这是sha1sums.txt包含的内容:

好的。现在让我们检查它们。我简单地从文件中grep sha1sum,可以看到它们确实匹配。

可以运行类似的命令来检查md5 sum。注意,在检查MD5之前,我从另一个下载镜像(这次是pair.com)获取了该文件。

最后,我们将检查签名。移动到镜像列表中的另一个站点,我获取签名进行检查。这次我选择了ocf.berkley.edu,并将签名文件下载到本地机器。

如上所示,我首先尝试用gpg –verify检查签名,它假设了正确的文件进行检查,但无法在我的gpg密钥链中找到密钥。所以我用gpg –recv-keys和密钥ID导入了密钥。重新运行显示签名确实已验证。您可以看到我第一次尝试验证和拉取密钥之间的时间间隔,在此期间我谷歌了密钥ID以查看是否有任何可疑结果。

现在我们可以继续安装我们的ISO。我还建议,如果安装介质有完整性检查,请在安装前运行它。Arch Linux是一个滚动发行版,所以我每次安装时都会进行这种验证。对于其他版本化的操作系统,如CentOS、Ubuntu等,我通常会下载一个镜像,验证它,然后加密并备份,以便将来安装特定版本时有一个已知的良好镜像。

额外部分:在工作中,当我超级偏执,且镜像是某个新的黑客工具或我们为另一家公司测试的东西时,我实际上会在空气隔离环境中启动镜像,然后将其插入镜像交换机,并在一段时间内拉取所有流量,以查看它是否尝试映射驱动器、向外ping其他网络,或获取我未请求的软件。Beau Bullock还向我提到,他喜欢在安装后运行漏洞扫描,这将从外部角度指出系统的哪些组件可能配置错误。这很有意义,不一定意味着镜像被故意制作成恶意,只是有人忘记在签署镜像前更新包x。


准备好了解更多? 通过Antisyphon的实惠课程提升您的技能! 付费转发您所能支付的培训 提供实时/虚拟和点播选项

EyeWitness及其优势 | 检查您的工具

[返回顶部]

Black Hills Information Security, Inc. 890 Lazelle Street, Sturgis, SD 57785-1611 | 701-484-BHIS (2447) © 2008-2024 关于我们 | BHIS部落公司 | 隐私政策 | 联系

链接

搜索网站

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计