Hackers Pivot from marimo RCE to Internal Database Using LLM Agent
2026/05/28 gbhackers — これまでの静的なプレイブックを廃した攻撃者が、リアルタイムで適応する AI 駆動エージェントへと移行していることを、新たに観測された侵入事例が示している。この攻撃は、Marimo ノートブック環境のリモートコード実行の脆弱性 CVE-2026-39987 を悪用するものであり、2026年5月10日に開始された。

侵入後の攻撃者は、環境ファイルとシステムパスからクラウド認証情報を収集した。従来のスクリプトベースの攻撃とは異なり、LLM エージェントにより動的に生成される侵害後のアクティビティが、その出力を分析することで、次のアクションをリアルタイムで決定していった。
この侵害から数分以内に、AWS API に対して窃取された認証情報が悪用された。攻撃者は AWS Secrets Manager から SSH 秘密鍵を取得し、それを用いて下流の SSH 踏み台ホストに対して認証を実施した。このピボットにより、内部インフラへのアクセスが可能となり、最終的に PostgreSQL データベースからのデータ流出に至った。
特筆すべき点として、データベース・スキーマと全データが 2 分未満でダンプされた点が挙げられるが、その速度だけではなく、精度の高さも示されている。
検出回避のための主要な技術として、Cloudflare Workers が分散型の外部送信レイヤーとして悪用されていた。この攻撃者は、単一のソースから API リクエストを送信するのではなく、11 個の異なる IP アドレスに分散させ、22 秒間で 12 件の AWS API コールを実行した。
Sysdig Threat Research Team (TRT) の報告によると、初期侵入からデータベース流出までの一連の攻撃チェーンは、LLM エージェントにより1 時間未満で実行された。今回のインシデントは、エージェント主導のポスト・エクスプロイトの、実環境における最初の事例の一つである。
このアプローチは、従来の送信元 IP 相関の分析を無効化するものであり、レート制限や IP ベースの異常検知に依存する防御を著しく困難にする。
同様のパターンは、SSH アクティビティでも確認されている。複数の短命セッションが、異なる IP から並列実行されたが、そこでは同一の窃取鍵が使用されていた。この分散実行モデルは、正常なクラウド動作を模倣しながら、協調的な悪性アクティビティを隠蔽する。
Marimo RCE からのピボット
Sysdig の研究者たちが特定したのは、この攻撃における 4 つの明確な指標である。それにより、事前に定義されたスクリプトではなく、AI エージェントにより動的に実行された状況が示される。
| Time | Event |
|---|---|
| 2026-05-10, 18:23:44 | First WebSocket connection from 157.66.54.26 to /terminal/ws on a vulnerable marimo instance |
| 2026-05-10, 18:23:45 | First interactive command (id) on the compromised host |
| 2026-05-10, 18:24:14 | Attacker begins credential harvest against /app/.env*, /etc/environment, /proc//environ, ~/.aws/credentials |
| 2026-05-10, 19:26:31 | First AWS API call (sts:GetCallerIdentity) using the first harvested access key, 48 minutes after the marimo session ended |
| 2026-05-10, 19:26:52 | First secretsmanager:GetSecretValue call against an SSH-key secret |
| 2026-05-10, 19:30:30 | First SSH authentication on SSH bastion server using the retrieved key |
| 2026-05-10, 19:30:30 to 19:32:23 | Eight bastion SSH sessions executed in parallel from six distinct Cloudflare Workers IPs, dumping host configuration and the internal PostgreSQL database |
指標_1:データベース標的化が即興的であった。アプリケーション・スキーマに関する一般的な仮定に基づき、攻撃者はテーブルを探索/ダンプしており、事前知識に依存しない推論的な挙動を示している。
指標_2:コマンドストリーム内に、一時的ではあるが、中国語の計画コメント “他にできることを確認する” が出現した。この内部モノローグと複数 IP からの同時実行は、人間による操作ではなく、自動化されたオーケストレーションを示唆する。
指標_3:機械処理向けにコマンドが構造化されていた。出力の区切り/結果の切り詰め/エラー抑制が示すのは、別システムである LLM が、結果を解析して次のアクションへ反映している可能性である。
指標_4:攻撃チェーンが、自身の出力を再利用している。たとえば、.pgpass ファイルから抽出した認証情報が、データベース・クエリにおいて即座に使用され、AWS シークレット識別子も API 応答から動的に選択されている。
侵入後の攻撃者は、きわめて迅速に行動した。初期アクセスは、Marimo ターミナルへの WebSocket 接続から発生し、その数秒後に認証情報の収集が開始された。
エージェント・システムへのデータ転送と推定される短い間隔の後に、AWS API コールが開始された。その数分後には、シークレット取得/踏み台ホストアクセス/データベース流出が完了していた。
このインシデントが示すのは、攻撃者の経済と能力の変化である。従来のような専用スクリプトを構築する必要はなく、AI エージェントを展開することで、ターゲット環境にリアルタイムで適応している。これにより攻撃コストは低減し、成功率は向上する。
その一方で、既知のコマンドシーケンスや IoC に依存する従来型の検知は、侵入ごとに異なる挙動を生成するエージェント型攻撃に対して、有効性が低下する可能性がある。
防御側にとって必要なことは、認証情報アクセス/不審なデータフロー/特権昇格パターンといった、なんらかの意図を持つ対象への検知へと重点を移すことである。
Sysdig の Michael Clark が指摘する通り、攻撃者は AI によりツールを進化させている。その結果、より高速で柔軟な侵入が実現され、検知が困難になっている。それは、既存のセキュリティ・モデルに対する挑戦でもある。
訳者後書:このインシデントは、 Marimo ノートブック環境に存在していたリモートコード実行の脆弱性 CVE-2026-39987 の悪用から始まりました。 この脆弱性を突いて侵入した、AI を悪用する攻撃者が、 環境ファイルなどからクラウドの認証情報を窃取したことで被害が拡大しました。 特に問題となったのは、実行結果を AI エージェントにリアルタイムで分析させ、次の不正操作を動的に生成させていた点にあります。盗み出した認証情報を悪用し、複数の分散された IP アドレスから AWS の管理機能やデータベースへ即座にアクセスする仕組みが機能していました。
You must be logged in to post a comment.