「あらゆるウェブページが、あなたのマシン上のエージェントに到達できる可能性がある」という見出しの濃紺のエディトリアル風イラスト:左側の「あなたが訪問したページ」と表示された開いたブラウザウィンドウから、細い琥珀色の線が暗い間隙を横切って「ゲートウェイ 127.0.0.1」と表示された光るゲートウェイノードへ伸び、そこから三本の線で「ペアリング済みノード」と表示された三つの小さなデバイスノードへ扇状に分岐している。
AI Safety Incidents

ClawJacked: あらゆるウェブサイトがローカルのOpenClawエージェントをブルートフォース攻撃可能

著者

Alistair Wren

公開日

最新モデル · 20すべてのモデルを見る →
ベンチマーク:Artificial Analysis · 毎日更新
すべての記事に戻る

ClawJackedは、Oasis Securityが2026年2月26日にオープンソースAIエージェントOpenClawで開示した脆弱性で、開発者が訪問した任意のウェブサイトが、その開発者自身のマシン上で動作するエージェントへの接続を開き、エージェントが制御を引き渡すまでそのパスワードを推測できるようにしていた。クリックもプラグインもプロンプトも不要だった。狙われたのはエージェントをオーケストレーションするゲートウェイで、侵入した攻撃者はエージェントと直接通信し、その設定をダンプし、ペアリング済みの全デバイスを列挙し、ログを読むことができた。エージェント型アクセス管理ソフトウェアのベンダーであるOasisは、この攻撃チェーンを自社ラボでエンドツーエンドに実証して非公開で報告し、OpenClawは24時間以内に修正をリリースした。本記事で引用したどの情報源にも、この攻撃が実ユーザーに対して使用された記録はない。アーカイブはこの出来事を、2026年2月25日という日単位の日付と、現実世界での被害が記録されていないことを伴う高重大度のインフラインシデントとして、OpenClawに関する他のエントリと並べて記録している。記録先はOrca AI Incident Archive.

三つのデフォルト、一つの連鎖

OpenClawは、ユーザーがWebダッシュボードまたはターミナルから操作するセルフホスト型のパーソナルエージェントであり、メッセージングアプリ、カレンダー、開発者ツールに接続して、それらの中で動作する。その中心にあるのはゲートウェイであり、Oasisが「作戦の頭脳」と表現するローカルWebSocketサーバーである。ゲートウェイは認証を処理し、設定を保存し、チャットセッションを管理し、macOSコンパニオンアプリやiPhoneなどのノードにコマンドをディスパッチする。認証はトークンまたはパスワードによるもので、ゲートウェイはデフォルトでlocalhostにバインドされ、ローカルアクセスは本質的に信頼されるという明示的な前提に基づいている(Oasis Security、2026年2月26日)。

その前提から生じる3つの帰結が連鎖していた。第一に、ブラウザは通常のHTTPリクエストと同じようにはWebSocket接続にクロスオリジン規則を適用しないため、ユーザーが訪問する任意のページ上のJavaScriptが、画面上に何も表示されることなくローカルゲートウェイのポートへのソケットを開くことができる。第二に、ゲートウェイのレートリミッターはループバック接続を完全に除外していたため、127.0.0.1からのパスワード試行失敗はカウントもスロットリングもログ記録もされなかった。第三に、ゲートウェイはlocalhostから来るデバイスペアリングを自動承認していたため、認証済みスクリプトは、リモートデバイスなら発生する確認プロンプトなしに、自身を信頼済みデバイスとして登録できた。

Oasisは自社ラボで推測速度を測定し、その結果を開示資料で報告した。「当社のラボテストでは、ブラウザのJavaScriptだけで毎秒数百回のパスワード推測を持続的に達成しました。この速度なら、よく使われるパスワードのリストは1秒未満で使い尽くされ、大規模な辞書でも数分しかかかりません。人間が選んだパスワードでは太刀打ちできません」。2026年3月1日にこの開示を報じたBleepingComputerも、同じ3つの手順と同じ順序を説明している。

A four-panel card titled 'Three defaults, chained', numbered 01 to 04: a page opens a WebSocket to the local gateway; the password is guessed at hundreds of attempts per second because loopback was exempt from the rate limiter; the script self-registers as a trusted device without a prompt; and the result is an authenticated operator session.

攻撃者が手に入れるもの、そしてOasisが実際に示したもの

認証が完了すると、スクリプトは管理者レベルの権限を持つオペレーターセッションを保持しました。Oasisは、その後直接実行できる4つのことを挙げています。AIエージェントにメッセージを送信してその返信を読むこと、使用中のAIプロバイダー、モデル、メッセージングチャネルを明らかにするゲートウェイ設定をダンプすること、接続されているすべてのノードをそのプラットフォームとIPアドレスとともに列挙すること、そしてアプリケーションログを読むことです。そこからOasisは、実演するのではなく、エスカレーションについて説明しています。それは、エージェントに指示して開発者のSlack履歴からAPIキーを検索させること、プライベートメッセージを読むこと、ペアリングされたデバイスからファイルを窃取すること、または任意のペアリングされたノードで任意のシェルコマンドを実行することです。同社の結果の要約は、典型的なOpenClaw統合を持つ開発者にとって、これは「ブラウザタブから開始される完全なワークステーションの侵害」に相当するというものです。

Oasisが公開したデモは、概念実証の動画付きで、その説明より範囲が狭い。無関係なサイト上のブラウザがゲートウェイのパスワードを推測し、完全な権限で接続してユーザーのエージェントとの対話に成功したが、ユーザーには何の表示もなかった。ファイルの持ち出しとシェル実行は、このアクセスによって可能になることとして説明されており、概念実証が実行した手順としてではない。この区別は、記録が実証されたものではなく現実に起きたインシデントとして読まれる場合に重要だ。

そのパッチは2026.2.26ではなく、2026.2.25で適用されました。

Oasisは読者にバージョン2026.2.25以降へアップデートするよう呼びかけており、OpenClaw自身のアドバイザリもそれに同意している。GitHubのアドバイザリGHSA-jmmg-jqc7-5qf4では、影響を受けるバージョンを2026.2.24以下、修正済みバージョンを2026.2.25以上と記載し、報告者としてOasisのリサーチリードであるElad Luz(@luz-oasis)の名前を挙げている。npmレジストリ上の2026.2.25のタイムスタンプは2026年2月26日04:16 UTCであり、このバージョンのプロジェクトのリリースノートは、3つのデフォルト設定に一対一で対応する表現で修正内容を説明している。「セキュリティ/ゲートウェイWebSocket認証:Control UI/Webchat以外の直接的なブラウザWebSocketクライアントに対してオリジンチェックを適用し、ブラウザ起点のループバック試行(localhostを含む)にパスワード認証失敗時のスロットリングを適用し、Control UI以外のブラウザクライアントに対するサイレント自動ペアリングをブロックする。」

ニュース記事のうち2件は異なる番号を挙げている。BleepingComputerは修正が「2月26日にバージョン2026.2.26でリリースされた」と述べており、SecurityAffairsは2026.2.26がこの問題に対処したリリースだと繰り返す一方で、同記事自身の助言段落では読者に2026.2.25以降へ更新するよう伝えている。2026年3月2日の開示を報じたInfosecurity Magazineは2026.2.25を挙げている。リリース2026.2.26は確かに存在するが、npmはそれを2月26日23:59 UTC(2026.2.25の約20時間後)と記録しており、そのリリースノートは別のハードニング作業のまとまりである。読者が探すべき修正は2026.2.25にあるものだ。

識別子は後から付与された。GitHubアドバイザリは2026年3月3日にCVE-2026-32025として公開され、NVDによるそのレコードは2026年3月19日に公開され、CVSS 3.1基本スコアは7.5で、NVDが主要評価者として、VulnCheckが二次評価者として「高」と評価した。アドバイザリ自体はスコアよりも慎重で、独自のseverityフィールドは「moderate」となっており、その本文ではこのバグを「重大だが条件付き」と呼び、四つの前提条件を明記している——ゲートウェイがループバック上で到達可能であること、パスワード認証が使用されていること、被害者が攻撃者の制御するWebコンテンツを開くこと、現実的な試行回数内で推測可能なパスワードであること。また、このバグが何ではないかも明確に述べている。「これは単独で、認証不要かつインターネットに露出したRCEクラスの問題ではない。これは、上記の条件下で重大な影響を及ぼす、ローカルなブラウザオリジンにおける認証強化のギャップである。」

A vertical timeline card with seven dated rows: 28 to 31 January 2026 an independent scan counts 42,665 internet-exposed instances; 9 February SecurityScorecard counts 40,214 with 35.4% flagged vulnerable; 26 February 04:16 UTC npm release 2026.2.25 ships the fix; 26 February Oasis publishes; 1 to 2 March outlets report it; 3 March the GitHub advisory is published as CVE-2026-32025; 19 March NVD publishes at CVSS 7.5.

42,665 がどこから来ているのか、そしてなぜそれが ClawJacked の数字ではないのか

アーカイブの要約には、開示時点で42,665件のインスタンスが露出していたと記録されており、SecurityScorecardは40,214という異なる数字を示し、そのうち35.4%が脆弱だったと注記している。この記録に引用されている3つの情報源のいずれにも、どちらの数字も含まれていない——Oasis、BleepingComputer、SecurityAffairsはいずれも、インストールベースの件数を付さずに脆弱性を説明している。どちらの数字も別のところから来ており、どちらもClawJackedが存在する前に公開されていた。

42,665という数字は独立したスキャンによるものです。調査結果をMediumで公開したセキュリティ研究者のMaor Dayanは、ClawdHunter v3.0というスキャナーを構築し、2026年1月28日から31日の間に収集されたShodanおよびCensysのデータに対して実行しました。その結果、インターネット上に公開されているOpenClawの「少なくとも42,665インスタンス」を報告し、うち5,194件が実際に脆弱であると検証され、検証されたものの93.4%が認証バイパスを示しました。40,214という数字はSecurityScorecardのSTRIKEチームによるもので、2026年2月9日に公開された調査で、インターネットに露出したOpenClawインスタンスを数え、15.2Kをリモートコード実行に対して脆弱と指摘し、「観測されたデプロイの35.4%が脆弱とフラグ付けされた」としています。SecurityScorecard自身の概要箇条書きでは、露出したコントロールパネルをホストする42.9Kの一意のIPアドレスが示されており、本文テキストには40,214の確認済みインスタンスが示されています — 1つのレポート内の2つの異なる測定値です。

どちらの数もClawJackedの到達範囲を測っていない。どちらも公開インターフェースで応答しているインスタンスを数えているからだ。ClawJackedの前提は正反対の構成にある。すなわち、ループバックにバインドされたゲートウェイがパスワードモードで動作し、そのマシンのユーザーが敵対的なページを閲覧する場合である。インターネット全体のスキャンで数えられるサーバーは、独自の認証の背後にあってこのバグの影響を受けないかもしれない一方、そうしたスキャンには決して現れないラップトップこそが、Oasisが説明したまさに標的である。したがって、アーカイブ自身の「開示時点」という表現は、1月の母集団の数を2月の脆弱性に結び付けている。これらの数は、OpenClawがどれだけ露出していたかを示す実測値ではあるが、ClawJackedが乗っ取れた可能性のあるマシンの数ではない。本稿は論争を裁定しているのではない——記録には係争中という印が付いていない——が、2つの数値の出所は検証可能であり、「開示時点」という枠付けを裏付けていない。

A two-column comparison card headed 'Exposed is not the same as hijackable'. The left column, 'What the exposure scans counted', lists 42,665 internet-reachable instances from a January 2026 scan and 40,214 from SecurityScorecard's February 2026 census with 35.4% flagged vulnerable. The right column, 'What ClawJacked required', lists a loopback-bound gateway in password mode, a user visiting attacker-controlled content and a guessable password.

何が確立されており、何が確立されていないのか

確認済み:Oasis Securityがこの攻撃チェーンを発見し、ラボ環境で実証したこと。OpenClaw自身のアドバイザリとリリースノートが、ブラウザWebSocketクライアントに対するオリジン強制の欠如、ループバック経由のパスワード試行に対するスロットリングの不在、通知なしの自動ペアリングという3つの挙動すべてを確認しており、2026.2.25がそれぞれを変更したこと。修正は報告から1日以内に提供されたこと。そして発見者自身のブログ以外の3つの媒体がそれを報じたこと。アーカイブの信頼度評価Aはその記録と整合しており、ここに挙げた内容は関係当事者によって争われていない。

立証されていない:誰かが実際にそれを使用したということ。ここには情報源が引用されておらず、この開示をめぐる報道の中にも見つからないが、現実世界での侵害、被害者、持ち出されたデータを報じるものはない。Oasisのものは実験室での実証であり、その解説は観測された攻撃ではなく攻撃者の能力を述べたものである。これは、アーカイブが実際の被害を何も記録していないことと整合しており、この記事における最も重要な限定条件である。つまり、これは脆弱性の記録であり、侵害の報告ではない。

出回っている2つのラベルは誤りであり、どちらも簡単に踏襲されてしまう。複数の二次記事がCVE-2026-25253をClawJackedに結び付けている。その識別子に関するNVDの記録は、同じ製品の別の脆弱性を説明している。2026.1.29より前のOpenClawがクエリ文字列からgatewayUrlを受け取り、トークンを送信しながら、確認を求めずにそのURLへ接続するというもので、CVSSスコア8.8のワンクリックのトークン窃取であり、2026年2月1日に公開され、1月29日に修正された。これは1月の脆弱性であり、仕組みもパッチも異なる。ClawJackedの識別子はCVE-2026-32025である。一方、Infosecurity MagazineはClawJackedを間接プロンプトインジェクションと説明したが、Oasisが文書化したチェーンにはプロンプトもモデルの判断も一切関与していない——それはオペレーターセッションで終わる認証バイパスである。

その後、何が変わりましたか?

OpenClawはそれを修正し、アドバイザリを公開し、報告者をクレジット表記した。そしてCVEは公開記事から1週間以内に割り当てられた。Oasisの組織への提言はパッチにとどまらない。開発者マシン上で稼働しているエージェントやアシスタントを棚卸しし、すべてのインスタンスを更新し、各インスタンスが保持する認証情報と権限を監査して未使用のものは取り消し、エージェントを非人間IDとして、意図の確認、ポリシーの適用、ジャストインタイムアクセス、人間からエージェント、そしてアクションに至る監査証跡を備えて統治することだ。同社は最後のカテゴリのソフトウェアを販売しており、最後の提言を最初の3つと比較検討する際には知っておく価値がある。

より広い文脈では、ClawJackedは大量のアドバイザリのうちの1つでした。GitHubアドバイザリデータベースには、2026年3月3日付のOpenClawアドバイザリが大量に含まれています。これはClawJackedのアドバイザリが公開されたのと同じ日で、バージョン2026.2.19から2026.2.26にわたる、認証、ペアリング、パストラバーサル、サンドボックスエスケープの個別のバグを扱っています。ClawJackedの記録が保持するパターンは、「AIエージェントは安全でない」よりも狭く、より有用です。つまり、ゲートウェイがループバックを信頼境界として扱い、ブラウザがその仮定を覆したというものです。127.0.0.1をスロットリングから除外するローカルサービスや、ローカル呼び出し元を自動承認するデバイスペアリングフローは、その背後にAIモデルがあるかどうかに関係なく、同じ形を引き継ぎます。この事例では、モデルは決して脆弱なコンポーネントではなく、その周囲の認証層が脆弱でした。