Shai-Hulud 供应链攻击事件响应

目录

Shai-Hulud 供应链攻击是一起重大的安全事件,引起了开发者社区的广泛关注。此次攻击涉及在 npm 生态系统中使用恶意软件包来入侵开发者系统并窃取敏感信息。在本文中,我们将概述可采取的事件响应步骤,以控制和减轻此次攻击的影响。

如需获取有关该攻击及其影响的详细分析,请阅读 SafeDep 博客

概要

bash
git clone https://github.com/safedep/shai-hulud-migration-response.git && \ cd shai-hulud-migration-response
  • 运行脚本使用 vet 扫描文件系统中的所有开源软件包
bash
./scripts/pv-scan.sh
  • 运行查询脚本以检查已知的恶意软件包版本
bash
./scripts/pv-query.sh
  • 运行以下脚本通过 SHA256 哈希检查已知的恶意 JavaScript 文件
bash
./scripts/pv-payload-hash-scan.sh

事件响应步骤

如果您认为自己受到此攻击的影响,请按照以下步骤操作:

  1. 扫描系统以查找下面的妥协指标(IoCs)
  2. 轮换受损系统中可用的凭据
  3. 建立防护措施以防止进一步受损

妥协指标(IoCs)

SafeDep 在事件期间发现以下类型的 IoCs:

  1. 恶意软件包,存放在此处
  2. 恶意 JavaScript 文件校验和(SHA256),存放在此处

这些是扫描脚本中包含的主要 IoCs。以下是事件期间观察到的其他 IoCs:

  • 凭据收集 URL:hxxps://webhook.site/bb8ca5f6-4175-45d2-b042-fc9ebb8170b7
  • 使用 /tmp/data.json 通过 TruffleHog 收集凭据
  • 使用 /tmp/processor.sh 收集凭据
  • 使用 /tmp/migrate-repos.sh 通过 GitHub 窃取私有源代码

轮换凭据

通过攻击传递的恶意有效载荷破坏了受感染系统中可用的凭据。轮换所有已知的凭据,尤其是以下内容:

  • $HOME/.npmrc$NPM_TOKEN 环境变量中的 Npm 凭据
  • 使用受影响系统的开发者的 GitHub 凭据
  • $HOME/.aws/credentials$AWS_ACCESS_KEY_ID$AWS_SECRET_ACCESS_KEY 环境变量中的 AWS 凭据
  • 可从受影响系统访问的 AWS Secrets Manager 中的 AWS 凭据
  • 可从受影响系统访问的 Google Cloud 凭据和存储在 Google Cloud Secret Manager 中的凭据
  • SSH 私钥,尤其是无密码的私钥

恶意有效载荷还使用 TruffleHog 从受感染系统中可用的源代码仓库中提取密钥。请考虑运行 TruffleHog 并轮换在受感染系统中发现的任何密钥。

建立防护措施

  • 安装 SafeDep vet 或类似工具,在合并拉取请求或部署代码之前扫描开源软件包中的恶意代码。

  • 安装 SafeDep pmg 或类似工具,防止在开发者机器上安装恶意软件包。

  • 考虑迁移到 pnpm 版本 10+,该版本默认禁用 npm 生命周期脚本

  • npm

  • oss

  • malware

  • supply-chain

  • security

  • incident-response

  • response

SafeDep 博客最新内容

关注以获取有关开源安全与工程的最新更新和见解