ハッカー、NVIDIA GPUの監視機能を操作して侵害したLinuxサーバー上の暗号資産マイニングを隠蔽

攻撃者がNVIDIA GPUのテレメトリを偽装し、カーネルルートキットでマイニングプロセスを隠蔽したうえ、TorとEthereumを使って別々のコマンドチャネルを維持していたLinuxの暗号資産マイニング侵入事例が明らかになりました。

「REF3364」として追跡されているこの攻撃は、インターネットに公開されたRayのジョブエージェントを悪用して、3台のLinux GPUホストに連携したツールキットを展開しました。

多層的な隠蔽工作はOSレベルの可視性とGPU監視の両方を標的としています。そのため、管理者が使い慣れたツールが誤解を招く結果を返す一方で、不正なワークロードは稼働し続けることができます。

侵入の発端となったのはRayです。RayはAIの学習や推論、Pythonワークロードに広く使われる分散コンピューティングフレームワークです。

Ray の Jobs APIは、リモートクラスタ上でアプリケーションを実行するためのジョブ投入に対応しています。このため、ジョブ投入インターフェースが外部に公開されていると、特に重大な影響が生じます。

侵害されたホストのRayダッシュボードはループバックでのみ待ち受けていましたが、ジョブエージェントは外部から到達可能で、認証なしでジョブの投入を受け付けていました。

探索行為は2026年10月22日に確認されました。その2日後には、攻撃者が投入したジョブがnvidia-smiを実行し、GPUのインベントリを持ち出しました。10月25日にはPythonのリバースシェルによって、対話型のアクセスが確立されました。

このシェルは当初、Rayセッション所有者の権限を引き継いでいました。その後、攻撃者はSSH認証鍵を追加してroot権限を取得し、/opt/vadi_配下にツールキットを配置しました。

なお、提供された調査結果からは、権限昇格がどのように行われたかは特定されていません。

この攻撃で最大の特徴となる回避コンポーネントは、libnvidia-ml.so.1をNVIDIA正規のManagement Libraryのラッパーに置き換えるものです。

このラッパーは監視を無効化するのではなく、クエリを横取りして正規のバックエンドを呼び出し、一部の結果を改変してから返します。

Image

Elastic Security Labsによると、このキャンペーンの中核はSANSARです。SANSARはRust製のオーケストレーターで、CPUとGPUのマイナーを管理しつつ、オペレーターに対話型のシェルアクセスを提供します。

クラウドセキュリティソリューション

NVIDIA GPUの監視機能

GPU使用率は0と報告され、温度は36〜46℃、消費電力は100〜200ワットの範囲でランダムに設定されます。

このラッパーはプロセス情報もフィルタリングします。そのため、NVMLに依存するnvidia-smiなどのツールが正しく機能しなくなります。

Image

SANSARは、回収したソースファイルからこのコンポーネントを再構築して再インストールできます。インストーラーはバージョン付きの正規ライブラリをバックエンド呼び出し用に残します。そのため、監視は一見正常に機能しているように見えますが、実際にはマイニング活動だけが選択的に隠蔽されます。

これを補完するftraceベースのルートキット「acpi_thermal_mgr.ko」は、設定されたプロセス、ワーカースレッド、ファイル、ソケットエントリを隠蔽します。

このルートキットはDKMSとinitramfsローダーを介してインストールされ、起動時に再読み込みされる可能性があります。フックによってディレクトリレコードが抑制されるほか、調査を試みても、隠蔽対象のプロセスやパスが存在しないことを示すエラーが返されます。

SANSARは、Rust製Tor実装のArtiを使い、エンコードされたonionコントローラーと通信します。直接接続でもブリッジ経由の接続でも同じサービスに到達し、LyrebirdがobfsproxyのObfs4とWebTunnelのトランスポートをサポートしています。

受信するメッセージは16種類あり、登録、ハートビート、対話型Bashセッション、マイナー設定、出力の転送、TCP SYNトラフィックの生成に対応しています。

CPUマイニングにはXMRigをkurtという名前に変更して使用し、GPUマイニングにはSRBMiner-MULTIをtilkiという名前に変更して使用しています。

プールアドレスとウォレットの認証情報は、ハードコードされたフォールバック設定ではなく、コントローラーから届きます。

これとは別に、systemdバックドアのnetnsが、Ethereumスマートコントラクトの呼び出しを通じて、エンコードされたコントローラーのIPv4アドレスを取得します。その後、TCPポート8080で直接接続します。

コントローラーのコマンドにより、外向きのBashシェルを追加で起動することも可能です。つまり、Ethereumが担うのはコントローラーの探索であり、シェルの通信経路ではありません。

この事例は、一見アイドル状態に見えるGPUがあっても、そのホストが安全だとは言い切れないことを示しています。テレメトリのインターフェース自体が侵害されている可能性があるためです。

調査では、使用率の数値だけを信頼せず、Rayへのジョブ投入、SSHによる永続化、NVIDIAライブラリの変更、DKMSの痕跡、ブートイメージの改変、想定外のサービスを突き合わせて確認する必要があります。

カーネル空間とユーザー空間の両方のレポートが同時に操作される場合、独立した可視性の確保が不可欠です。

IOC(侵害指標)

観測値 種別 名称 参照
00c9ac44291f83c72d54302e99d155a3e26d02225a3e516764d5833a99657c9e SHA-256 sansar マイナーのオーケストレーター
96fc528ca5e7d1c2b3add5e31b8797cb126f704976c8fbeaecdbf0aa4309ad46 SHA-256 kurt Xmrig 6.25.0
acc706afc9322a3eae1ef49049749e0a7c9f1a123895ac56dc8a289beb2fb5b7 SHA-256 tilki SRBMiner-MULTI

注: IPアドレスやドメインは、誤って名前解決されたりハイパーリンク化されたりするのを防ぐため、意図的に無害化(例:[.])しています。無害化を解除する場合は、MISP、VirusTotal、SIEMなど管理された脅威インテリジェンスプラットフォーム内に限定してください。

MTTRを21分短縮し、サイバー脅威を被害が出る前に阻止します。ANYRUNのサンドボックスをSOCに導入。

サイバーセキュリティトレーニングコース

翻訳元: https://gbhackers.com/nvidia-gpu-monitoring/

本記事は gbhackers.com の記事を翻訳・要約したものです。