3月30日,微步情报局监测到liblzma/xz官方库被供应链攻击并植入后门(漏洞编号:
CVE-2024-3094)的事件,引起了国内外安全研究人员和相关企业的广泛关注。
据悉,被投毒的恶意代码存在于 xz-utils 的 5.6.0 和5.6.1版本中,可能导致ssh服务端的身份验证被绕过,存在未授权访问、拒绝服务的风险。
微步情报局第一时间跟进并分析了该事件,并已于昨日发布了相关的研究文章《
紧急排查!liblzma/xz官方库被植入后门
》,收到了大量客户的咨询。在随后的深度研判过程中,微步情报局已完成了该后门编译复现工作。
截至目前,微步云沙箱S、沙箱分析平台OneSandbox均已支持相关恶意样本的精确检测。如遇特殊情况,请及时与微步技术人员取得联系。
-
微步情报局已经复现了该后门的源码编译和生成过程,
符合编译条件的编译最终会生成带有恶意代码的二进制后门
。
-
目前微步情报局正在继续对该后门文件进行深入的逆向和调试分析,初步发现,
该后门以lzma库的正常符号混淆视听,存在反调试和多个函数hook点,并且在sshd程序执行时会多次解密字符串进行对比从而派发特定的功能导致执行时间异常,当sshd以特定方式被连接时后门会被触发
。
-
微步沙箱团队已经紧急发布了关于该事件的检测规则,
我们建议企业对于可疑的相关文件可以上传到微步云沙箱进行检测确认,使用了
微步沙箱分析
平台OneSandbox的企业用户也可以直接使用产品进行检测
,如果有告警,相关标签会显示“CVE-2024-3094”。
同时,根据大家高频咨询的问题以及微步情报局的研究成果,我们总结了如下的FAQ内容,希望能够帮助大家对整个事件有个更全面的认识:
1. 此次事件的影响范围有多大?对于中招企业可能有那些危害?
根据微步情报局目前的监测,源代码植入后门版本的xz-utils最早发布于2024年2月的5.6.0,被Debian unstable分支、Fedora 等少数Linux发行版及第三方系统、软件集成。主流Linux发行版的稳定版本均未包含恶意代码,因此
我们初步判断影响范围有限
。
对于已经被植入后门的企业,攻击者具备利用该后门执行任意命令的权限,并可以进一步利用相关主机权限对内网进行后续的渗透,危害级别很高,我们建议相关企业高度重视并快速处置相关后门文件,此外建议进一步排查内部是否存在已经被黑客攻击的行为。
此外,截至目前,Linux发行版已将xz-utils回滚到5.6之前的安全的代码版本。使用非稳定版Linux的用户请务必在更新包管理缓存之后,再更新xz-utils。
1)攻击者通过获取xz官方库的提交者权限写入恶意代码,随后被开源社区分发。
2)用户通过拉取带有恶意代码的恶意程序和代码将恶意文件引入到内部主机上,随后被sshd等程序加载植入成功。
3)黑客发送特定的网络数据包到用户的sshd程序并最终触发后门获取命令执行的权限。
a.
攻击者在build-to-host.m4中植入了恶意命令(如图1所示),通过该恶意文件自动生成恶意configure文件;
图1
该shell命令作用为找攻击者进行投毒的xz文件(tests/files/bad-3-corrupt_lzma2.xz)。
b.
对找到的xz文件进行处理(如图2所示),利用xz解压缩获取混淆的shell脚本(如图3所示)。
图3
c.
图3对应的shell脚本执行以后,会执行另外一个恶意shell脚本,该脚本指定了在哪些情况下(例如:使用包编译,如图4所示)会生成了恶意的.o文件替换正常的.o文件,最终生成恶意的so文件。
图4
正常的liblzma_la_crc64_fast.o,liblzma_la_crc32_fast.o在32KB左右,从测试数据中解压的恶意代码超过80KB,Makfile中恶意代码替换原始编译出的liblzma_la_crc32_fast.o,最终链接到liblzma.so.5.6.x。
d.
研究人员复现利用,可手动修改liblzma.so.5软连接指向携带恶意的liblzma.so.5.6.x。
参考:
https://www.openwall.com/lists/oss-security/2024/03/29/4
微步情报局复现后确认,sshd正确加载恶意so后用不同的环境变量验证恶意代码是否执行。正确加载执行后耗时在数百毫秒,没有正确加载执行耗时在10毫秒级别:
3. 该事件有没有可以用于做检测的威胁情报,如何处置应对?
微步情报局利用自身数据以及结合公开信息,监测到了多个涉及该事件的后门文件,相关的后门文件Hash及沙箱分析报告链接如下:
文件hash
|
沙箱分析报告链接
|
319feb5a9cddd81955d915b5632b4a5f8f9080281fb46e2f6d69d53f693c23ae
|
https://s.threatbook.com/report/file/319feb5a9cddd81955d915b5632b4a5f8f9080281fb46e2f6d69d53f693c23ae
|
8fa641c454c3e0f76de73b7cc3446096b9c8b9d33d406d38b8ac76090b0344fd
|
https://s.threatbook.com/report/file/8fa641c454c3e0f76de73b7cc3446096b9c8b9d33d406d38b8ac76090b0344fd
|
b418bfd34aa246b2e7b5cb5d263a640e5d080810f767370c4d2c24662a274963
|
https://s.threatbook.com/report/file/b418bfd34aa246b2e7b5cb5d263a640e5d080810f767370c4d2c24662a274963
|
cbeef92e67bf41ca9c015557d81f39adaba67ca9fb3574139754999030b83537
|
https://s.threatbook.com/report/file/cbeef92e67bf41ca9c015557d81f39adaba67ca9fb3574139754999030b83537
|
2ed51ae8764a177aa6401df935ecef3d103db1f72ac98a7c803cdc4869fd3d98
|
https://s.threatbook.com/report/file/2ed51ae8764a177aa6401df935ecef3d103db1f72ac98a7c803cdc4869fd3d98
|
15b08cbaa49b6df580f81ef85d5dd4bcca4dac41daa87b47c67177707b697cb7
|
https://s.threatbook.com/report/file/15b08cbaa49b6df580f81ef85d5dd4bcca4dac41daa87b47c67177707b697cb7
|
除此之外,根据目前的分析和发现,微步情报局暂未发现该事件中的后门文件具备主动外联的功能。
经过微步情报局分析确认,此次事件严格意义上属于供应链攻击事件,黑客通过再源码层面植入恶意代码最终生成带有后门功能的恶意程序,导致黑客可以通过该后门在未经授权的情况下访问主机,因此,
我们认为该事件与传统意义上的漏洞攻击无关
。如问题2中的攻击流程所示,后门并不是由受影响版本的xz解压某一个恶意的压缩包而进行植入的,而是攻击者通过在受影响版本的confingure文件中植入恶意的脚本,在编译时对某个构造的压缩文件(tests/files/bad-3-corrupt_lzma2.xz/good-large_compressed.lzma)进行替换解压从而执行后续的脚本,造成最终的后门植入。
微步情报局已在昨天发布的文章中给出了详细的排查步骤,详情可以参考前文《
紧急排查!liblzma/xz官方库被植入后门
》的排查建议部分。
此外,微步云沙箱团队也已于昨天紧急更新该事件的检测规则,微步云沙箱S、沙箱分析平台OneSandbox均已支持该恶意样本检测。
如果发现相关主机确实存在相关后门文件,我们建议启动应急流程,排查是否已经有黑客利用相关后门进行了后续的渗透和横向移动等攻击行为。
6. 此次攻击的始作俑者是谁?
本次供应链投毒事件的发生并非偶然,而是一场精心酝酿,蓄谋已久的计划。"Jia Tan" 于2021年10月开始积极参与xz项目的维护,在两年时间里,逐渐获得信任,最终于2024年2月在构建脚本中引入了bad-3-corrupt_lzma2.xz 和 good-large_compressed.lzma两个恶意二进制文件。
关于"Jia Tan",不妨推测其为某一黑客组织的成员,又或是某一黑客组织共同运营的,专门为本次事件所准备的账号。
微步情报局提醒,近年来Solarwinds供应链投毒事件、Apache log4j2远程代码执行漏洞、RCE-XZ后门事件等事件接连曝光,几乎每年都会出现一次较大规模的软件供应链安全事件,对网络安全造成了非常严重的挑战,广大用户应当提升安全意识,打造网络安全实战对抗能力。
值得关注的是,将于4月11日开幕的
“智见 · 破境”——2024网络安全运营实战大会(CSOP)北京站
,微步在线技术合伙人黄雅芳、樊兴华将分别就供应链安全以及风险驱动的情报运营等相关话题,与参会嘉宾展开相关探讨。