このボットネットは、指示内容でAI APIキーをほかの認証情報より優先して狙うよう定めています。一方、感染拡大は別のスクリプトが担い、到達可能なホストへ広がっていきます。
研究者らは、2026年5月から公開状態になっていた、認証なしのDockerレジストリからこの攻撃活動を発見しました。1日かけて読み取り専用でデータを収集した結果、59件のリポジトリ、234件のイメージタグ、4.3GBのイメージデータを回収しています。
2024年10月から2026年8月にわたるこのアーカイブには、トロイの木馬化した暗号資産ウォレットアプリを配布する別の攻撃活動の痕跡も残されていました。
CARBONATOは、ポート2375で認証なしの接続を受け付けるDockerデーモンを探索します。
該当するデーモンを見つけると、Docker APIを使って特権コンテナーを起動します。このコンテナーにはホストのファイルシステムがマウントされ、ホストのプロセス名前空間とネットワーク名前空間にもアクセスできます。これにより、インプラントは基盤となるサーバー上でコマンドを実行できます。
続いてインプラントは、攻撃者が接続するためのリバースSSHトンネルを開き、SSHサーバーをインストールして、攻撃者の鍵を追加します。さらにTelegram経由で、ホスト名、IPアドレス、国、コンテナーIDを記載した展開レポートを送信します。
再起動やクリーンアップ後も生き残るため、cron、systemdタイマー、rc.local、OpenRCを通じて永続化の仕組みを作成します。ファイルやコンテナーが消えた場合には、ウォッチドッグがインプラントを再取得することもあります。
CARBONATOは、環境に溶け込む工夫もしています。コンテナー名はsystemd-resolvedで、プロセスの引数はLinuxカーネルスレッドに偽装されています。
これとは別に、ホストおよびそのDockerブリッジに接続されたネットワーク全体を対象としたスキャンが、5分ごとに実行されます。このスキャンは、公開状態のDocker APIがほかにないかを調べ、未感染のホストにインプラントを展開します。
侵害したホストでは、CARBONATOが正規のオープンソースフレームワークであるHermes Agentを、コードを変更せずにインストールします。その代わり、エージェントのペルソナファイルSOUL.mdを、自らをGH0STと名付けた39行のプロンプトに置き換えます。
このプロンプトは、Telegram経由で送られるタスクに従い、永続性を維持し、SSH認証情報、アクセストークン、データベースよりもAI APIキーを優先するようエージェントに指示しています。
攻撃者がタスクを送信すると、Hermes Agentはそのタスクとペルソナの指示を、攻撃者が運用するLLMゲートウェイに渡します。
モデルはターミナルコマンドを提案し、その出力を確認して、次の動作を判断できます。AIエージェントが担うのはこうした対話的な作業の支援であり、CARBONATOのスキャンや自己増殖を駆動するものではありません。
プロンプトは、OpenAI、Anthropic、Googleなどのプロバイダーが発行するキーを平文で収集し、攻撃者に送信するよう求めています。
ThreatDownの特定によると、これはボットネットが掲げる優先目標であり、感染したすべてのサーバーにこうしたキーが含まれていたことを示すものではありません。
注: IPアドレスとドメインは、誤って名前解決されたりハイパーリンク化されたりするのを防ぐため、意図的にデファング([.]など)処理しています。リファング(元に戻す処理)は、MISP、VirusTotal、SIEMなど、管理された脅威インテリジェンスプラットフォーム内でのみ行ってください。
16,000以上のSOCチームがANY.RUNを活用し、脅威調査を効率化して手作業を削減しています。チームでの導入を検討する
翻訳元: https://cyberpress.org/ai-botnet-hijacks-docker-servers/