Hadesキャンペーンが新たなPythonサプライチェーン攻撃を展開、開発者の秘密情報を標的に
「Hades」と名付けられた新たなサプライチェーン攻撃の波が、「Miasma」キャンペーンから出現し、Python Package Index(PyPI)レジストリに侵入しました。この巧妙な攻撃は、19のパッケージにわたる37個の悪意あるwheelアーティファクトを利用し、機密性の高い開発者認証情報を盗み出し、ネットワーク全体に拡散することを目的とした「Mini Shai-Hulud」攻撃の系統を継続しています。
「Miasma」サプライチェーンキャンペーンは、「Hades」と名付けられた新たな攻撃波によりエスカレートし、「Python Package Index(PyPI)」レジストリに影響を与えています。この最新のイテレーションは、19のパッケージにわたる37個の悪意あるwheelアーティファクトを含み、「Mini Shai-Hulud」スタイルの攻撃をさらに洗練させ、特定開発者エコシステムを標的にしています。
**Socket**による分析によると、侵害されたリリースには`*-setup.pth`ファイルが含まれていました。このファイルはPython起動時に自動的に実行されるように設計されており、「Bun」JavaScriptランタイムをダウンロードし、その後`_index.js`という難読化されたJavaScriptペイロードを起動します。
### 特定された悪意あるパッケージ
以下のパッケージが「Hades」キャンペーンの一部として特定されています:
* bramin 0.0.2, 0.0.3, 0.0.4
* cmd2func 0.2.2, 0.2.3
* coolbox 0.4.1, 0.4.2
* dynamo-release 1.5.4
* executor-engine 0.3.4, 0.3.5
* executor-http 0.1.3, 0.1.4
* funcdesc 0.2.2, 0.2.3
* magique 0.6.8, 0.6.9
* magique-ai 0.4.4, 0.4.5
* mrbios 0.1.1, 0.1.2
* napari-ufish 0.0.2, 0.0.3
* nucbox 0.1.2, 0.1.3
* okite 0.0.7, 0.0.8
* pantheon-agents 0.6.1, 0.6.2
* pantheon-toolsets 0.5.5, 0.5.6
* spateo-release 1.1.2
* synago 0.1.1, 0.1.2
* ufish 0.1.2, 0.1.3
* uprobe 0.1.3, 0.1.4
### 進化するペイロードと情報漏洩
以前の「Shai-Hulud」および「Miasma」キャンペーンと同様に、悪意あるペイロードは「Bun」JavaScriptランタイムをダウンロードしてインストールします。このランタイムは、開発者システムから広範なデータを漏洩させることができる、高度に難読化されたJavaScriptスティラーを実行するために使用されます。
盗まれたデータには、「GitHub」、「npm」、「PyPI」、「RubyGems」、「JFrog」、「CircleCI」、「Anthropic」、「AWS」、「GCP」、「Azure」、「Kubernetes」に関連する秘密情報が含まれます。また、「Docker」設定、「Vault」トークン、「SSH」キー、シェル履歴、`.env`ファイル、`.npmrc`ファイル、`.pypirc`ファイル、「Claude」/「MCP」設定、その他のローカルまたはランナーからアクセス可能な認証情報も標的となります。
Hadesキャンペーンにおける重要な変更点は、情報漏洩マーカーです。以前のイテレーションでは「Miasma: The Spreading Blight」のような「GitHub」リポジトリの説明が使用されていましたが、最新の波では「Hades - The End for the Damned」または「Hades * The End for the Damned」が使用されています。
**Socket**は、Hadesは独立したインシデントではなく、「Mini Shai-Hulud」/「Miasma」系統の直接的な分岐であると詳述しています。中核となる手法は同じです:信頼されたパッケージチャネルを悪用し、通常のパッケージ使用前に実行し、「Bun」搭載のJavaScriptペイロードをステージングし、開発者およびCI/CD認証情報を盗み、情報漏洩と拡散に「GitHub」中心の手法を利用します。
### 新しい実行ベクトル
今回は、攻撃者は`*-setup.pth`ファイルを利用しています。これはPythonの`site`モジュールがインタープリタ起動時に処理するものです。これにより、悪意あるペイロードは、被害者が汚染されたパッケージを明示的にインポートしなくても、インストール直後に実行されます。ペイロードはその後、「GitHub」から「Bun」をダウンロードして実行しますが、システムのロケールがロシア語であるかどうかを確認した後のみです。
**Socket**は、以前の「Shai-Hulud」および「Miasma」攻撃で悪用された`npm install-hook`の問題との類似性を指摘しており、構文は異なるものの、セキュリティ上の意味合い(コードレビュー前の依存関係インストール中の実行)は同じままであることを強調しています。
### HadesクラスターとAI回避
Hadesキャンペーンは、計算生物学、バイオインフォマティクス、遺伝子型-表現型解析エコシステム内のパッケージも侵害しました。これには以下が含まれます:
* embiggen 0.11.97
* ensmallen 0.8.101
* gpsea 0.9.14
* mflux-streamlit 0.0.3, 0.0.4
* nhmpy 2.4.7
* ppkt2synergy 0.1.1
* pyphetools 0.9.120
このクラスターは、パッケージの`__init__.py`ファイル内に難読化された単一行インポートフックとしてエントリポイントを埋め込むという、独自ののアプローチを使用しています。しかし、結果は同じです:Bunランタイムのダウンロードと実行、それに続くJavaScriptペイロードです。
**StepSecurity**は、「Bun」ランタイムの一貫した使用を強調しています。「Bun」をスタンドアロンZIPファイルとしてダウンロードすることで、マルウェアは「Node.js」のインストールがない環境で複雑なJavaScriptタスクを実行でき、従来のパッケージマネージャー制御やネットワークプロキシログを回避できます。
注目すべき展開として、マルウェアは新しい人工知能(AI)防御回避技術を組み込んでいます。これは、大規模言語モデル(LLM)ベースのパッケージ分析ツールを誤解させ、パッケージを安全と分類させるための、プレーンテキストのプロンプトインジェクションを含んでいます。
さらに、マルウェアは「GitHub」コミットをキーワード「TheBeautifulSnadsOfTime」でクエリして、Base64エンコードされたJavaScriptペイロードを抽出します。また、「GitHub」をコミット「firedalazer」に一致するコミットでポーリングして、Pythonベースのドロッパーを取得して実行します。
### Hadesマルウェアの機能
Hadesマルウェアは、いくつかの高度な機能を提供します:
* **ラテラルムーブメント**: 開発者ネットワーク全体に「SSH」または「SCP」経由で複製・拡散し、侵害されたシステムからトロイ化された「PyPI」パッケージをプッシュします。これは、開発者の「OpenID Connect(OIDC)」信頼設定を悪用します。
* **GitHubリポジトリの標的化**: 収集された「GitHub」トークンが適切な書き込み権限を持っている場合、「GitHub Actions」ランナーを使用して組織の秘密情報を抽出します。
* **ワークスペースのバックドア化**: ローカルワークスペースフォルダをバックドア化し、AIアシスタントによって分析されたりIDEで開かれたりするとコード実行をトリガーします。標的には、「Anthropic Claude」、「OpenAI Codex」、「Google Gemini」、「Microsoft Copilot」、「Cline」、「Aider」、「Tabby」、「Amazon Q」、「Cody」、「Bolt」、「Continue」が含まれます。
* **ワイパー機能**: 「gh-token-monitor」という名前のバックグラウンドサービスをインストールします。これはワイパーとして機能し、盗まれた「GitHub」トークンが失効した場合、すべてのデータを削除します(`rm -rf ~/; rm -rf ~/Documents`)。
セキュリティ研究者**Rohan Prabhu**は、「Miasma」アクターの重要な機能として、「GitHub Actions」ランナー(`Runner.Worker`プロセス)のプロセスメモリを読み取って秘密情報を抽出することを挙げています。当初はLinuxシステムで`/proc/{pid}/mem`に限定されていましたが、Hadesキャンペーンは「macOS」および「Windows」向けのカスタマイズされたメモリスクレーパーを導入しています。
### GitHub上のShai-Hulud亜種
この展開は、**StepSecurity**が「Pythagora-io/gpt-pilot」という人気のオープンソースAI開発ツールに関連付けられた「GitHub」アカウント(「LeonOstrez」)を未知の攻撃者が侵害したことを明らかにしたことと一致しています。攻撃者は、「Shai-Hulud」認証情報窃盗ワームの亜種をメインブランチに強制プッシュしました。このマルウェアは、ロシア語ロケールを持つシステムを回避しながら、疑いを持たない開発者によるプロジェクト実行時に静かにアクティブ化するように設計されています。
**StepSecurity**の共同創設者兼CTOである**Ashish Kurmi**は、マルウェアがPythonコードフォーマッターである「ruff」によって阻止されたと述べています。攻撃者がCIをバイパスしようとした試みは、注入されたPythonファイルがプロジェクトのフォーマットおよびリンティングルールに違反したため、2回失敗しました。
**Snyk**は、これらの攻撃をより広範な「Shai-Hulud」/「Miasma」系統の一部と説明しており、各波は「Bun」ランタイムの難読化されたスティラーと、新しい永続化メカニズム、情報漏洩経路、およびインストール時またはビルド時の自動コード実行を組み合わせて利用しています。
**Cloudsmith**は、署名されたキーと認証されたメンテナーアカウントがもはや絶対的な安全を保証しないと警告しています。アップストリームレジストリやリポジトリが侵害された場合、公開コードは直接的かつ強力な侵害ベクトルとなります。