注意: 本博客中提到的技术和工具可能已过时,不适用于当前情况。但本文仍可作为学习机会,用于更新或整合到现代工具和技术中。
今天我将介绍在安装操作系统前验证ISO镜像的过程。
如果您在2月20日下载了Linux Mint 17.3 Cinnamon,有可能获取了带有恶意软件的ISO。Linux Mint团队在2月21日凌晨2点左右发布通知,发现其网站遭入侵,官方安装包被恶意版本替换。被黑的ISO托管在absentvodka.com,Mint团队表示可能对保加利亚相关网站展开调查。
攻击后网站被关闭以避免传播恶意文件。Mint团队成员在公告评论中指出,攻击者通过WordPress博客入侵。公告发布前,linuxmint.com的网站数据在TheRealDeal以85美元出售,至少一人购买并在HackerNews上发布了配置文件。
恶意代码可见于此Gist,似乎用于构建僵尸网络。
用户如何避免此类威胁?首先需认识到,无论提供方技术能力多强,产品仍可能被篡改。因此,用户需自行验证所获产品真实性。以下是我验证系统镜像的步骤,以Arch Linux为例,目标包括了解系统已知问题和获取多重独立验证。
1. 了解系统漏洞
Arch Linux的CVE列表见此页面,CentOS的CVE检查可访问此链接。当前两者均存在未修复的glibc漏洞。
2. 校验哈希值
从镜像站(如kernel.org)下载ISO和校验文件。为防恶意控制多个镜像,我从aggregate.org下载SHA1校验文件,使用grep命令比对本地文件哈希值:
|
|
MD5校验类似,需从另一镜像(如pair.com)获取校验文件。
3. 验证GPG签名
从其他镜像(如ocf.berkley.edu)下载签名文件,使用GPG验证:
|
|
若密钥未导入,先通过gpg --recv-keys [KEY_ID]获取密钥,并搜索密钥ID确认可信性。
验证通过后即可安装。建议在安装前运行介质完整性检查。Arch Linux为滚动版本,每次安装均需验证;CentOS或Ubuntu等版本化系统可下载一次验证后加密备份,供后续使用。
额外安全措施
对于高度敏感场景(如测试新工具),可在隔离环境中启动镜像,通过镜像交换机捕获流量,检测是否尝试映射驱动、外联ping或下载未授权软件。安装后运行漏洞扫描也可发现配置问题,未必是恶意行为,可能是打包时遗漏更新。
提升技能?
Antisyphon提供可负担的培训课程!
支持随需付费的直播/点播课程。