NemoClawのAIはブラウザタブ経由で汚染される恐れ

DNSリバインディングの脆弱性により、攻撃者はNemoClawのローカルOllamaサーバーに未認証でアクセスできる可能性があり、以後の会話にも残り続ける指示を埋め込むことが可能になります。

Nvidiaが提供するNemoClawに影響する脆弱性により、攻撃者は被害者のマシン上で悪意あるWebサイトを一度閲覧させるだけで、ローカルのOllamaモデルサーバーの制御を奪える可能性があることが分かりました。

Cyeraの調査によると、この脆弱性を悪用されるとサーバーへの未認証アクセスを許してしまい、攻撃者はモデルに指示を埋め込んで以後の会話にも残り続けさせることができます。攻撃者はインターネット経由で被害者のOllamaサーバーに直接接続するわけではありません。代わりに、悪意あるWebページがブラウザを騙して、DNSリバインディングを通じてローカルで稼働しているOllama APIにアクセスさせる仕組みです。

これが成功すると、メッセージがモデルにどのように提示されるかを制御する層である「チャットテンプレート」が改ざんされ、エージェントのシステムプロンプトに悪意ある指示が追加されます。

Cyeraに買収される予定のOasis Securityでリサーチ責任者を務めるElad Luz氏は、次のように述べています。「CVE-2026-65105を使えば、攻撃者はNemoClawのモデルがすべてのメッセージをどう読み取るかを――ガードレールやオペレーターの目に触れるどの層よりもさらに下の層で――書き換えることができ、しかもその変更は以後のすべてのセッションを通じて生き残るため、検知が極めて困難な整合性の問題を引き起こします」。「より大きな流れとして、エージェントは実質的な権限を持つアイデンティティになりつつあるにもかかわらず、私たちは依然としてそれを『ツール』としてしかセキュリティ対策していないのです」。

この脆弱性については、Windows以外のシステム向けにNvidiaがすでにパッチを提供済みです。

DNSリバインディングがOllamaをローカルの壁の外に連れ出す

NemoClawは、Nvidiaの「OpenShell」サンドボックス内でOpenClawのAIエージェントを実行するために設計されています。ローカル推論には、開発者自身のマシン上でモデルを動かせるOllamaを利用でき、プロンプトやコードをクラウドサービスに送信せずに済む仕組みです。

問題の発端はネットワーク構成にあります。OpenShellサンドボックスはDockerコンテナ内で動作するため、ループバックアドレス(127.0.0.1)でのみ待ち受けているOllamaサービスに到達できません。そこでNemoClawは、Ollamaを「OLLAMA_HOST=0.0.0.0:11434」で起動し、すべてのネットワークインターフェースで待ち受けるようにしています。

これによりコンテナの接続性の問題は解決しますが、同時にOllamaの重要な保護機能が無効化されてしまいます。Ollama APIは認証を必要とせず、通常はCORSとHostヘッダーの検証により、ブラウザからの不正アクセスを防いでいます。しかし、Ollamaがループバック以外のアドレスにバインドされている場合、Hostヘッダーの検証はスキップされてしまいます。

攻撃者はDNSリバインディングを用いることで、悪意あるWebページを最初は攻撃者のサーバーに解決させ、その後127.0.0.1やローカルネットワークのアドレスに解決させることが可能です。ブラウザ側は依然としてリクエストが攻撃者管理下のホスト名宛てだと認識していますが、実際にそれを受け取るのはOllamaであり、結果としてローカルAPIへの未認証アクセスが成立してしまいます。

Cequence SecurityのCISO(最高情報セキュリティ責任者)を務めるRandolph Barr氏は次のように述べています。「ここで使われている個々の要素自体は目新しいものではありません。DNSリバインディングは10年以上前からブラウザの『芸当』として知られてきました。しかし、それを未認証のローカルモデルサーバーに向けたという点が新しいのです」。

Cyeraの調査では、攻撃者がインストール済みのモデルやOllamaのバージョンを列挙できるほか、モデルの詳細やシステムプロンプトを取得したり、モデルを削除したり、大容量モデルをダウンロードしてディスク容量を消費させたりと、ローカルのOllama環境をさまざまな形で操作できることが判明しました。

汚染されたテンプレートは消えてくれない

より深刻な問題は、APIアクセスを取得された後に何が起こるかです。

Cyeraは、Ollamaのモデル設定を通じて悪意ある指示を注入するテストを行いました。単純なシステムプロンプトインジェクションだけでは不十分でした。OpenClaw自身がモデルとの通信時に独自のシステムプロンプトを供給するためです。そこで研究者らは、代わりにモデルのチャットテンプレートを標的にしました。

テンプレートを改変すれば、モデル本来の挙動を維持したまま、システムメッセージに独自の指示を追加することが可能になります。この改変はモデルレベルで行われるため、OpenClawエージェント側からは見えず、自身のシステムプロンプトで上書きすることもできません。

研究者らによると、汚染されたテンプレートは以後の会話にも残り続け、モデルの通常のメタデータ上では見えないままになるとのことです。

実際の被害の大きさは、侵害されたエージェントに何へのアクセスが許可されているかに左右されます。Cyeraによれば、注入された指示によってエージェントを攻撃者が管理するパッケージやURLへ誘導したり、セキュリティ警告を抑制したり、脆弱なコードを混入させたり、利用可能なネットワークアクセスを通じて情報を外部に持ち出したりする可能性があるとしています。

NemoClawバージョン0.0.35にはmacOSおよびLinuxシステム向けの修正パッチが含まれていますが、Windows/WSLについては依然として未修正のままです。Nvidiaは、CSOからのコメント要請に即座には応じませんでした。

Shwetaは2017年から企業向けテクノロジーについて執筆しており、直近ではCSO onlineでサイバーセキュリティを担当しています。ランサムウェアからゼロトラストアーキテクチャまで、複雑なテーマを専門家にも一般読者にも分かりやすく解説しています。Asian College of Journalismでジャーナリズムの大学院ディプロマを取得しており、サイバー脅威の解読に追われていないときは、フィクションを読んだり、映画を観たり、新しいレシピに挑戦したりして過ごしています。

翻訳元: https://www.csoonline.com/article/4214156/nemoclaws-ai-can-be-poisoned-through-a-browser-tab.html

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