Shai Holud 攻撃は、署名された TanStack、Mistral npm の悪意のあるパッケージを出荷します

Shai Holud 攻撃は、署名された TanStack、Mistral npm の悪意のあるパッケージを出荷します


Shai Holud 攻撃は、署名された TanStack、Mistral npm の悪意のあるパッケージを出荷します

開発者をターゲットとした認証情報を盗むマルウェアを配布する新しい She-Hold サプライ チェーン キャンペーンで、npm と PyPI にわたる数百のパッケージが侵害されました。

攻撃者は有効な OpenID Connect (OIDC) トークンをハイジャックし、検証可能な発行元証明書 (SLSA ビルド レベル 3) を含む悪意のあるパッケージ バージョンを公開しました。

TeamPCP 脅威グループによるものとされるこの攻撃は、数十の TanStack および Mistral AI パッケージの侵害から始まりましたが、すぐに Guardrails AI、UiPath、OpenSearch などの他の人気のあるプロジェクトに拡大しました。

シャイ・フルドのキャンペーンは昨年9月に発表され、数回繰り返された [1, 2, 3]自動生成された GitHub リポジトリで数十万の開発者の秘密を公開する人もいます。最近影響を受けたプロジェクトには、Bitwarden CLI パッケージと公式 SAP パッケージがあります。

最新の攻撃波は昨日発生し、脅威アクターがノード パッケージ マネージャー (npm) の TanStack 名前空間でいくつかの悪意のあるパッケージを公開し、その後、盗んだ CI/CD 資格情報を使用して他のプロジェクトに拡散しました。

アプリケーション セキュリティ企業 StepSecurity は、脅威アクターが正規の CI/CD パイプラインを通じて感染パッケージを公開し、npm 署名インフラストラクチャによって発行された有効な SLSA ソース証明書を保持しており、「正規の TanStack/router ワークフローを解放します。」

Endor Labs は npm で 160 以上のパッケージがハッキングされたと報告し、Aikido は 373 の悪意のあるパッケージ バージョンのヒットを記録し、Socket は npm と Python Package Index (PyPI) 全体で 416 のハッキングされたパッケージ アーティファクトを追跡しました。

TanStack の TanStack 事後レポートによると、攻撃者は 3 つの脆弱性を連鎖させました。危険な「pull_request-target」ワークフロー、GitHub Actions キャッシュの汚染、ランナーのメモリからの OIDC トークンの盗用です。

攻撃者は、有効なソース、有効な Sigstore 証明書、および正規の GitHub Actions 署名を含む 42 の TanStack パッケージにわたる 84 の悪意のあるバージョンを公開しました。

開発者の観点から見ると、パケットは暗号的に本物であるように見え、侵害の兆候はありませんでした。

Endor Labs は、攻撃者が TanStack/Router リポジトリのフォークにプッシュされた孤立したコミットを悪用し、ブランチに属していなくても GitHub の共有フォーク オブジェクト リポジトリ経由でアクセスできるようにする、巧妙な Git コミット トリックを強調しています。

コミット参照は悪意のあるオプションの依存関係を介しており、これにより npm はパッケージのインストール中に攻撃者が制御するコードを自動的に取得して実行します。

このマルウェアは、次のような開発者の秘密をターゲットにしています。

  • GitHub アクションの OIDC および PAT トークン
  • Git 認証情報
  • npm発行トークン
  • AWS Secrets Manager、IAM、および ESC タスクの認証情報
  • Kubernetes サービス アカウント トークンとクラスター認証情報
  • HashiCorp ボールト トークン
  • SSHキー
  • コードクロードの構成
  • VS コードのタスク
  • .env ファイル

StepSecurityによると、ペイロードはGitHub Actionsのプロセスメモリを読み取り、クラウドプロバイダー、暗号通貨トークン、メッセージングアプリに関連する100以上のファイルパスから認証情報を収集するという。

機密情報を抽出するために、マルウェアはセッション P2P ネットワークを使用し、暗号化された宅配トラフィックのように見せかけ、検出、ブロック、削除の取り組みを複雑にしました。

感染が発生すると、マルウェアは自身を Claude Code 自動実行タスクと VS Code タスクに書き込むため、悪意のあるパッケージをアンインストールしてもマルウェアは削除されません。

自己配布メカニズムは以前のウェーブとほとんど変わっていません。盗まれた GitHub/npm 認証情報を使用し、侵害されたメンテナにリンクされているパッケージを列挙し、箇条書きを変更してペイロードを挿入し、悪意のあるバージョンを再公開します。

サプライ チェーン セキュリティ プラットフォームの SafeDep によると、影響を受ける Mistral AI パッケージと TanStack パッケージではトリガー メカニズムが異なりますが、同じ認証情報盗難ペイロードがドロップされます。

Microsoft Threat Intelligence は、PyPI 上の悪意のある Mistral AI パッケージによって配信されるペイロードを分析しました。プレーヤーはこれに「transformers.pyz」という名前を付けました。これは、事前トレーニングされた自然言語処理モデルにアクセスするために使用される Hugging Face Transformers オープン ソース Python ライブラリになりすますためである可能性があります。

研究者らによると、ペイロードはLinuxシステム上の情報を盗むマルウェアを投下するという。この窃盗犯には、基本的なジオフェンシング ロジックが含まれており、特にロシア語設定が検出されたホストでの実行を回避します。

破壊的な二次ルーチンもあります。イスラエルまたはイランから発生したと思われる環境では、このマルウェアは確率的改ざんメカニズムを示し、6 分の 1 の確率で再帰的削除コマンド (rm -rf/) を実行します。

この動作は、TeamPCP が Kubernetes プラットフォームをターゲットとして 3 月に展開した CanisterWorm キャンペーンに似ています。 CanisterWorm がイランのタイムゾーンと一致するマシンに侵入すると、それを消去します。

侵害されたパッケージのリストは、さまざまなセキュリティ ベンダーのレポートで入手できます。 [1, 2, 3, 4, 5]また、効果の全体像を確認するには、すべてのリソースを確認することをお勧めします。

影響を受けるパッケージ バージョンをダウンロードした開発者は、資格情報が公開されていると想定する必要があります。研究者は、セキュリティ チームが次の措置を講じることを推奨しています。

  • 影響を受けるパッケージのバージョンを確認する
  • 開発者のマシンでの永続性をチェックする
  • すべての認証情報 (GitHub トークン、npm トークン、AWS 認証情報、ボールト トークン、Kubernetes サービス アカウント、および CI/CD シークレット) をローテーションします。
  • IDE ディレクトリに npm インストール後に残存する悪意のあるファイル (router_runtime.js や setup.mjs など) がないか確認します。
  • 脅威アクターのコマンド アンド コントロール インフラストラクチャ (api.masscan.cloud、git-tanstack.com、および *.getsession.org) を DNS またはプロキシ レベルでブロックします。

Snykの研究者らは、この攻撃は悪意のあるパッケージに対して有効なSLSAビルドレベル3の証明書を生成するため、悪意のあるパッケージの署名ベースのチェックとともに、その出所を検証し、インストール時に動作分析の層を追加する必要があると述べている。

長期的には、同様の攻撃のリスクを軽減するために、ロックファイルのインストールのみを強制することを検討してください。これにより、パッケージの自動/サイレント更新が防止されます。

アップデート [08:36 EST]: 侵害された Mistral AI パッケージを使用して配信されたペイロードに関する Microsoft Threat Intelligence の分析からの情報を追加しました。

記事画像

人工知能は、CPU と OS の両方のサンドボックスをバイパスする 4 つのゼロデイを 1 つのエクスプロイトに連鎖させました。新しいエクスプロイトの波が来ています。

Autonomous Verification Summit (5 月 12 日と 14 日) では、コンテキスト豊富な自律検証がどのようにエクスプロイトを発見し、制御が行われていることを証明し、修復ループを閉じるかをご覧ください。

自分の場所を主張しましょう

Leave a Reply

Your email address will not be published. Required fields are marked *