数百のソフトウェアパッケージが影響を受け、コーダーのマシン上のエンタープライズ認証情報が再び脅かされています。
TeamPCP脅威グループは、今週数時間以内に170のNode Package Manager(npm)およびPyPIパッケージに正常に侵入することに成功した、別の大規模なサプライチェーン攻撃を実行しました。
この攻撃はReactウェブアプリケーション開発者の間で非常に人気のあるルーティングライブラリである、42個のパッケージの全体的なTanStack Routerエコシステム(@tanstack)に影響しました。@squawk(87個のパッケージ)、@uipath(66個のパッケージ)、@tallyui(30個のパッケージ)、@beproduct(18個のパッケージ)を含む複数の他のパッケージも同様に影響を受け、npmおよびPyPI双方のMistral AIのSDKスイート、およびGuardrails AI PyPIパッケージも影響を受けました。
自動化されたセキュリティツールを使用している複数のベンダーによって検出された攻撃は5月11日に発生し、自動化されたMini Shai-Huludマルウェアプラットフォームのワーム機能により、パッケージエコシステム全体に急速に蔓延しました(分析による)。
攻撃に巻き込まれたパッケージバージョンの正確な数はソースによって異なります。Aikido Securityによると169個のパッケージ名前空間全体で373個でしたが、SafeDepは170個のnpmパッケージ全体で404個のパッケージバージョンであり、このうち2つがPyPIに影響していると述べています。
デッドマンズスイッチ
この攻撃の顕著な特徴は、攻撃の責任があるとされる脅威グループであるTeamPCPが、メンテナーの設定ミスとGitHub Actions弱点の組み合わせを悪用して、プロジェクトの正規リリースパイプラインをハイジャックできた容易さです。
メンテナー認証情報を直接盗く代わりに、攻撃者はリスクのあるトリガーであるpull_request_targetを悪用しました。これはサードパーティーワークフローを自動的に実行することを可能にします(メンテナーの承認疲労を回避する方法)が、メンテナーの短期間のOIDCトークンがスクレイピングに脆弱になることを意味しています。
これらのトークンを手に入れた攻撃者は、他のプロジェクトに蔓延した悪意あるMini Shai-Huludマルウェアを注入することによって、パッケージに侵入することができました。
その目的はGitHubおよびnpmトークン、クラウド認証情報、APIキー、Kubernetesサービスアカウント、SSHキーなどの開発者認証情報を盗むことです。さらに不幸なことに、このマルウェアはまた、開発者が盗まれたGitHubトークンを取り消した場合にユーザーのホームディレクトリ全体を削除しようとする破壊的な「デッドマンズスイッチ」モニターもインストールします。
「彼らは有名な攻撃が業界によってすぐに検出されることを知っています。特定の米国の営業時間をターゲットにすることで、彼らは短い機会の窓の間に利益を最大化したいと考えられます」と彼はメールで述べました。
「ソフトウェア使用と信頼ネットワークが進化した方法は、主に暗黙の信頼に傾いており、これらの攻撃で悪用されている根本的な原因である可能性があります。残念なことに、特に開発者とソフトウェア企業がすべてを上回る速度を期待している現在では、修正するのは困難です。」
開発者はパッケージの周りにさらにセキュリティを配置することができますが、これは追加の摩擦を引き起こすだろうとDattaは述べました。「正直なところ、これは世界がまだ理解しようとしていることだと思います。」
SafeDepは影響を受けたパッケージの完全なリストを、侵害の指標とともに公開しています。侵害されたパッケージのいずれかが使用中の場合、推奨されるアクションはロックファイルで既知の侵害バージョンをチェックし、依存関係を既知の良好なバージョンに固定し、マルウェアファイルの証拠をチェックすることです。感染したバージョンが疑われる場合は、インポート時に使用されていた認証情報をローテーションする必要があります。