近日,一则消息惊炸天了!
主流计算机操作系统linux的正式安装包,差点被“黑客”植入后门!
如果Linux安装包中的这个“人造木马”没有被及时发现,随Linux在全球服务器及计算机上被用户及企业及政府部门安装上,那意味着全球网络及计算机全线沦陷!不知道会发生什么,不仅仅只是数据被盗,更多不堪设想的事情都会发生。因为沦陷的计算机及服务器全都被黑客远程接管远程操控了!网络瘫痪、卫星相碰、核弹引爆……总之都有可能!
究竟是怎么回事?让多盟君为你叙来!
攻击者于 2021 年注册了 GitHub 账号,之后积极参与Linux 操作系统xz 项目的维护,并逐渐获取了信任,并获得了直接 commit(向正式代码库上传)代码的权利。
相当于攻击者伪装成开源编程爱好者,潜伏了2.5年,在取得开源库主开发的信任后,用看似人畜无害的几步植入了一个非常难以觉察的后门。
黑客手法之高,令人惊叹。
攻击者在一个很隐秘的地方加了一个看似不小心遗落的句号(真的就是一个句号!!!),让其可以把一个重要的安全防范措施绕过,不用验证便可直接登录Linux服务器或计算机。
更为隐秘的是,攻击数据被伪装成测试数据,并且在直接源代码编译的时候还不会调用攻击数据,只有在打包编译上才会调用。意味着,在编程团队调试阶段运行程序时,后门不会激活,但在做成可派发的安装文件包时,后门才被激活并嵌入安装包中!
另外从一些细节能看出来攻击者也非常用心:
攻击者抢在 ubuntu beta freeze 的几天前才尝试让新版本并入,以期望减少在测试期间被发现的时间。
xz-utils 项目的原维护者 Lasse Collin (Larhzu),有着定期“互联网失踪”(Internet Break) 的习惯,而且最近正在进行一段Internet Break,导致代码库的变动,他没有 重查review 的机会。漏洞被另一个数据库人士发现到3月30日,也没能联系上他本人。
这可能也是攻击者选定 xz-utils 项目的原因之一。
回顾一下技术细节,大约是这样:恶意代码是藏在测试用例包里的脚本, 跟着操作系统打包构建时候被调用, 恶意代码编入xz-utils库了, liblzma 依赖 xz-utils, openssh 的 sshd 又依赖 liblzma 导致 sshd 执行时候, xz-utils的恶意代码触发, hook相关rsa函数干坏事。