悪意あるWebページ閲覧でローカルAIを持続的に改変―NVIDIA「NemoClaw」に脆弱性

2026年8月27日 19:41

印刷

記事提供元:Tech Times

Photo by Steve A Johnson on Unsplash

Photo by Steve A Johnson on Unsplash[写真拡大]

セキュリティ企業Oasis Securityの研究チームは、NVIDIAのAIエージェント展開基盤「NemoClaw」に、攻撃者が管理するWebページを起点としてローカルのOllama APIへ不正アクセスできる脆弱性を発見した。脆弱性は「CVE-2026-65105」として2026年8月25日に公開され、CVSS基本値は8.1、深刻度は「HIGH」と評価されている。

研究チームが実証した攻撃では、モデルのチャットテンプレートに隠れた指示を追加できる。改変されたテンプレートは、その後の会話でも使用されるため、通常のセッション単位のプロンプトインジェクションより影響が持続しやすい。利用者が攻撃者のページを開く必要があるほか、Ollamaが影響を受けるネットワーク設定で動作していることが成立条件となる。

■NemoClawとOllamaのネットワーク設定が起点

NemoClawは、AIエージェントをNVIDIAのOpenShellサンドボックス内で動かすためのオープンソース基盤である。推論先の一つとしてOllamaをサポートし、モデルを外部のクラウドAPIではなく、開発者のハードウェア上で実行できる。

OpenShellのサンドボックスはDockerコンテナ内で動作する。コンテナからホスト上のOllamaへ接続できるようにするため、問題となった構成ではOllamaが「OLLAMA_HOST=0.0.0.0:11434」で起動され、すべてのネットワークインターフェースで接続を待ち受けていた。

OllamaのAPI自体には認証機能がなく、ブラウザからの不正アクセスを防ぐため、CORSとHostヘッダー検証を利用している。しかし、Ollamaが0.0.0.0などの非ループバックアドレスにバインドされると、Hostヘッダー検証が省略される。この状態では、残るCORSの保護をDNSリバインディングによって迂回できるという。

0.0.0.0へのバインドは、同一ネットワーク内のほかの機器からOllama APIへ直接到達できる可能性も生む。したがって、今回の問題はブラウザ経由の攻撃だけでなく、ローカルネットワークへのAPI公開という側面も持つ。

■DNSリバインディングでローカルAPIに到達

DNSリバインディングは、攻撃者が管理するドメインの接続先を途中で変更し、ブラウザを経由してローカル環境のサービスへアクセスする手法である。

攻撃者のドメインは、最初に攻撃者自身のサーバーを指し、利用者のブラウザへWebページを返す。その後、同じドメインの名前解決先を127.0.0.1や利用者のLAN内アドレスへ変更する。ブラウザはホスト名を基準として同一オリジンかどうかを判断するため、接続先のIPアドレスが変わっても、同じドメインに対する通信として処理する場合がある。

Ollamaが0.0.0.0で待ち受け、Hostヘッダー検証が省略されていると、攻撃者のページから送られた要求がローカルの11434番ポートへ到達する。OriginとHostには同じ攻撃者ドメインが入るため、CORSでも同一オリジンの要求として許可される。

Ollamaでは2024年、バージョン0.1.29より前の環境にDNSリバインディング脆弱性「CVE-2024-28224」が確認され、Hostヘッダー検証を含む対策が導入された。今回の攻撃は、NemoClawがOllamaを非ループバックアドレスへバインドすることで、その検証が働かない状態になる点を突いている。

■モデルのチャットテンプレートを改変

Ollama APIへのアクセスを得た攻撃者は、導入済みモデルやOllamaのバージョンを列挙したり、モデルの詳細を取得したりできる。モデルの削除、大容量モデルのダウンロードによるストレージ消費、推論処理の不正利用なども想定される。

研究チームが特に重視しているのが、Ollamaの「/api/create」エンドポイントを使ったチャットテンプレートの改変である。チャットテンプレートは、システムプロンプト、利用者の入力、ツールからの出力など、役割付きのメッセージをモデルへ渡すテキスト形式に変換するGoテンプレートだ。

攻撃者は「/api/show」で既存のテンプレートを取得し、元の処理を維持したまま隠れた指示を追加したテンプレートを作成できる。以後、クライアントが送信するシステムプロンプトを含むメッセージは、改変されたテンプレートを通してモデルへ渡される。

通常のプロンプトインジェクションは、AIが読み込んだWebページや文書などを通じ、特定の会話に意図しない指示を混入させる。これに対してチャットテンプレートの改変は、各メッセージをモデル向けに整形する層へ指示を埋め込むため、新しい会話を開始しても影響が残る。モデル名やサイズなどの一般的な表示情報にも変化が現れにくいという。

研究チームは、macOS上のFirefoxと脆弱なNemoClawを使った概念実証で、WebページからOllamaの情報を取得し、テンプレートへ指示を追加した後、エージェントの応答が変化することを確認した。

■一般的なEDRでは把握しにくい

この攻撃では、マルウェアの実行や新しいプロセスの起動を必要とせず、ブラウザからローカルのHTTP APIへ要求を送る。外部の不審なサーバーへ直接接続するのではなく、Ollamaで通常使われる11434番ポートへの通信として現れる点も特徴だ。

チャットテンプレートの変更はOllamaのモデル定義に保持される。ファイルの不審な生成、未知の実行ファイルの起動、レジストリ変更といった典型的な兆候を中心に監視するウイルス対策ソフトやEDRでは、この変更を脅威として識別できない可能性がある。

一方、改変の確認手段がないわけではない。「/api/show」から現在のテンプレートを取得し、公式レジストリで配布されているモデルや、信頼できるバックアップのテンプレートと比較すれば、意図しない追加を調べられる。

Black Duck SoftwareのCollin Hogue-Spears氏は、「ローカルとはモデルが動く場所を表し、プライベートとは誰がそこへ到達できるかを表す」と説明している。モデルを手元のハードウェアで実行することと、そのAPIがローカル環境からしか利用できないことは別の問題となる。

■NVIDIAはLinux向け更新を公開

NVIDIAのセキュリティ情報では、CVE-2026-65105について、NemoClawの推論サーバー設定により、攻撃者が認証なしで推論サービスへアクセスできる脆弱性と説明している。影響として情報漏えいとサービス拒否が挙げられ、CVSS基本値は8.1とされた。

同社の公式情報では、Linux版NemoClawの0から0.0.25までが影響を受け、修正版としてコミット「f06796ff3」とバージョン0.0.25が示されている。

一方、Oasis Securityの調査を報じた複数のセキュリティメディアは、macOSとLinuxの対象構成には修正が導入されたものの、Windowsホスト上のOllamaをWSLやDockerコンテナから利用する経路は未修正だと伝えている。NVIDIAのセキュリティ情報はCVE-2026-65105の対象プラットフォームをLinuxとしており、Windows向けの修正版や提供時期は掲載していない。

WindowsやWSLでNemoClawとホスト上のOllamaを組み合わせている利用者は、使用しているNemoClawのバージョンだけでなく、Ollamaが実際にどのアドレスで待ち受けているかを確認する必要がある。

■利用者が確認すべき対策

最初に確認すべきなのは、Ollamaの待ち受けアドレスである。Ollamaを単体で使用している場合を含め、「OLLAMA_HOST=0.0.0.0:11434」など、非ループバックアドレスで待ち受けていないかを調べる。

Ollamaを127.0.0.1だけにバインドすれば、同一LAN内のほかの機器やDNSリバインディングを使ったWebページからAPIへ到達する経路を狭められる。ただし、NemoClawのWindows構成ではコンテナからホスト上のループバックアドレスへ接続できなくなる可能性があるため、単純な書き換えだけではローカル推論が利用できなくなる場合がある。認証付きプロキシなどを含め、コンテナに必要な通信だけを許可する構成を検討する必要がある。

ホストのファイアウォールで11434番ポートへのLANからの接続を遮断することも、0.0.0.0へのバインドによって生じるネットワーク公開の範囲を狭める。ただし、同じ端末のブラウザを起点とするDNSリバインディングは別の経路であるため、ファイアウォールだけに依存すべきではない。

モデルが改変されていないか確認するには、「/api/show」でチャットテンプレートを取得し、信頼できる初期状態と比較する。意図しない指示が見つかった場合は、影響を受けたモデルを削除して信頼できる配布元から再取得し、再利用する前にOllamaへの到達経路を修正する。

修正版が提供されている対象環境ではNemoClawを更新する。WindowsやWSLを含め、修正の適用状況を公式情報だけで判断できない構成では、Ollama APIを認証なしで広いインターフェースへ公開しないことが重要となる。

■ローカルAIにもWebサービスと同じ境界管理が必要

今回の問題は、AIモデルそのものではなく、モデルを動かす推論サーバーとコンテナを接続するネットワーク構成から生じた。ローカルAIはデータを外部のクラウドへ送らずに利用できるが、推論サーバーがHTTP APIを提供している以上、待ち受けアドレス、認証、ブラウザからの到達性を個別に管理する必要がある。

エージェントが利用できるファイルやネットワーク、プロセスをサンドボックスで制限することには、侵害時の影響を抑える意味がある。一方、改変されたモデルがエージェントに許可されたツールやサービスを利用する場合、影響範囲はエージェントに与えた権限によって左右される。

米CISA、NSA、英国、オーストラリア、カナダ、ニュージーランドのサイバーセキュリティ機関が2026年5月に公表した共同指針も、エージェント型AIが攻撃対象領域の拡大、権限管理、構成上のリスク、不明瞭な記録などの課題をもたらすと指摘している。推論サーバー、チャットテンプレート、ネットワーク設定を含む一連の基盤を、エージェントのセキュリティ境界として監査することが求められる。

■注目ポイントQ&A

●CVE-2026-65105とはどのような脆弱性ですか?

NemoClawの推論サーバー設定により、認証のないOllama APIへ不正アクセスされる可能性がある脆弱性です。研究チームは、DNSリバインディングとOllama APIを組み合わせ、モデルのチャットテンプレートを改変する攻撃を実証しています。

●NemoClawを使わず、Ollama単体を利用している場合も影響を受けますか?

CVE-2026-65105はNemoClawの設定に割り当てられた脆弱性ですが、Ollamaを自分で0.0.0.0などの非ループバックアドレスへバインドしている場合は、同様の到達経路が生じる可能性があります。利用しているバージョンに加え、実際の待ち受けアドレスとAPIへのアクセス制御を確認してください。

●一般的なウイルス対策ソフトやEDRで検知しにくいのはなぜですか?

ブラウザからローカルのOllama APIへ要求を送り、モデル定義のチャットテンプレートを変更するためです。新しい実行ファイルや不審なプロセスの生成を伴わず、通常のローカルAPI通信に近い形で処理されることから、従来型の検知ルールだけでは識別しにくい可能性があります。

●チャットテンプレートの改変は通常のプロンプトインジェクションと何が違いますか?

通常のプロンプトインジェクションは、AIが読み込んだコンテンツを通じて特定の会話に指示を混入させます。チャットテンプレートの改変では、すべてのメッセージをモデル向けのテキストへ変換する処理に指示が追加されるため、新しい会話やクライアントから送られたシステムプロンプトにも影響が及びます。

●モデルが改変されていないか確認するにはどうすればよいですか?

Ollamaの「/api/show」エンドポイントでモデルのチャットテンプレートを取得し、公式レジストリのモデルや信頼できるバックアップと比較してください。意図しない指示が見つかった場合は、モデルを信頼できる配布元から再取得し、Ollamaへのネットワーク到達経路を修正してから利用を再開してください。

元記事: Single Webpage Can Permanently Poison Local AI Model via NemoClaw Flaw, Windows Unpatched

※この記事はTech Timesから提供を受けた記事を日本向けに翻訳・編集したものです。

関連キーワード

関連記事