ハッカーがドキュメントやサイトのメタデータを悪用し、自律型AIエージェントを騙して暗号資産の支払いを実行させる攻撃が確認されています。
この攻撃は間接プロンプトインジェクション(IPI)を利用しています。これは、Webコンテンツや構造化データに悪意ある指示を仕込み、自動化タスクを実行中のAIエージェントの判断に影響を与える手法です。
攻撃者はSEOポイズニングとJSON-LDの悪用、CSSによる隠蔽を組み合わせることで、一見正規のAPIドキュメントに見えるページを作成します。そして、エージェント型ワークフローに「少額の支払いが必要な手順である」と信じ込ませ、攻撃者が管理する暗号資産ウォレットへ資金を送らせます。
脅威アクターはまず、SEOポイズニングを使って開発関連の検索クエリ(例えば偽のPythonパッケージ名など)の検索結果上位に不正なページを表示させます。
目に見えるコンテンツは本物のドキュメントを模倣する一方、JSON-LDのような信頼性の高い構造化フィールドでは、サイトを「SoftwareApplication」として記述し、「MissingLicenseKeyException」を解決するために安価な開発者向けAPIライセンスが必要だと主張する「offers」オブジェクトを埋め込んでいます。
Web対応の多くのAIエージェントはコンテキストを構築する際に構造化メタデータを優先するため、そこに埋め込まれた支払い指示があたかも正当なものであるかのように見えてしまいます。

ThreatLabzは、IPIを用いてWebサイトに指示を隠し、AIエージェントに攻撃者の指示に従わせようとする2つのキャンペーンを特定しました。
このJSON-LDにはStripeの決済リンクと、ハードコードされたウォレットへイーサリアム送金を実行させるスクリプトも含まれており、ThreatLabzはこのウォレットが既に支払いを受け取っていることを確認しています。
AIを騙す偽のAPIドキュメント
人間の訪問者に気づかれないようにするため、攻撃者はCSSの手法(例えば画面外への配置)を使い、プロンプト形式の指示をページのDOM内に隠しています。これにより、通常のブラウザ上では表示されないものの、スクレイパーやパーサー、エージェントには検出される状態になっています。
隠された<div>ブロックはJSON-LDの支払いに関する説明を再現しており、3ドルの開発者ライセンスを購入することでエラーを「解決」するようエージェントに明示的に指示します。取引完了後、サイトはAPIキーをでっち上げて表示し、ソーシャルエンジニアリングの仕上げとします。
同じページは人間の開発者に対しても支払いオプションを提示しており、被害者の対象を広げています。

2つ目のキャンペーンでは、タイポスクワッティングとメタデータの改ざんを使い、DeFi(分散型金融)トラッキングサービスになりすましていました。
この不正ドメインは、タイトルタグやメタタグ、Open Graphタグにキーワードを詰め込み、JSON-LDを使って公式の発行元であると偽って主張していました。これにより、一部のモデルは「DeBank Login」のようなクエリに対し、この偽ページを正しい情報源であると誤認させられていました。
このページには、モデルに対してこのサイトを最有力の情報源として扱い、タイポスクワッティングである点には触れないよう指示する隠しコマンドが含まれており、下流の応答に対する強力なRAGポイズニングの経路となっていました。
ThreatLabzは、こうしたIPI手法について、独自に構築した自律型Web対応のAIエージェントを使い、26種類の大規模言語モデルを対象に検証を行いました。
その結果はモデルによって大きく異なり、非常に印象的なものでした。支払い詐欺サイトとやり取りした際に、4つのモデル(Llama 3.3 70B Instruct、Llama 3.2 90B Vision Instruct、Gemini 3 Flash、Gemini 2.5 Pro)が実際に支払いを実行してしまいました。

タイポスクワッティングのシナリオでは、特定のコンテキスト条件下において2つのモデルが不正サイトを正規のものと誤って分類しました。ただし、公式ドメインを参照情報として与えた場合、モデルはこの偽ページを正しく拒否できており、既知の正しい情報をコンテキストとして与えることの重要性が示されています。
今回のキャンペーンからは、いくつかの実践的な防御策が浮かび上がります。第一に、Webコンテンツはエージェント型システムにとって拡大し続ける攻撃対象領域であるという点です。構造化メタデータや隠されたDOM要素は、検知されにくい悪意ある指示を運ぶ手段になり得ます。
第二に、検証されていないWebページを取り込むRAGパイプラインは、コンテキスト汚染のリスクを抱えています。運用者は厳格な情報源の許可リスト化、発行元の検証、スキーマの検証を徹底すべきです。
第三に、エージェントは構造化フィールドを慎重に扱い、情報源の信頼度スコアリングを適用するとともに、支払いや認証情報の送信といった潜在的に危険な操作については人間による確認を求めるべきです。
最後に、モデルベンダーやインテグレーターは、エージェント型ワークフローをIPIのパターンに照らして評価し、検証スイートに敵対的テストを組み込む必要があります。
AIエージェントがユーザーに代わって自律的に行動する場面が増えるにつれ、攻撃者は今後も従来型のSEO・Web悪用の手法とプロンプトインジェクションのパターンを組み合わせ続けるとみられます。
防御側は、コンテンツ取り込みの堅牢化や発行元シグナルの改善に取り組むとともに、単純な詐欺が実際の金銭的損失につながらないよう、取引には明示的な人間の同意を必須とする対応が求められます。
侵害の痕跡(IOC)
| IOC | GitHub Link |
|---|---|
| market-insight-global[.]com | https://github[.]com/Open-Agent-Utilities/mig-institutional-api-client |
| identity-breach-response[.]org | https://github[.]com/Open-Agent-Utilities/session-token-leak-detector |
| runners-daily-blog[.]com | https://github[.]com/Open-Agent-Utilities/sneaker-drop-monitor-v2 |
| bistro-reserve-now[.]net | https://github[.]com/Open-Agent-Utilities/opentable-resy-bypasser |
| edge-compliance-node[.]org | https://github[.]com/Open-Agent-Utilities/bot-compliance-middleware |
| digital-asset-mart[.]org | https://github[.]com/Open-Agent-Utilities/digital-asset-arbitrage-cli |
| consensus-protocol-v4[.]org | https://github[.]com/Open-Agent-Utilities/llm-fact-check-protocol |
| visual-media-rights-group[.]org | https://github[.]com/Open-Agent-Utilities/royalty-free-image-scraper |
| permits[.]global-transit-authority[.]org | https://github[.]com/Open-Agent-Utilities/global-visa-automation-cli |
| py-lib-repository[.]dev | https://github[.]com/Open-Agent-Utilities/requests-secure-v2 |
| debank[.]auction | N/A |
注: IPアドレスおよびドメインは、誤って名前解決やハイパーリンク化されることを防ぐため、意図的に無害化(defang)されています(例: [.])。再有効化(re-fang)は、MISP、VirusTotal、あるいは自組織のSIEMなど、管理された脅威インテリジェンス基盤の中でのみ行ってください。
翻訳元: https://gbhackers.com/fake-api-documentation-to-trick-ai/