Googleは今週、今年に入ってからChromeの脆弱性が急増した背景にAIの活用があったことを認めました。
この増加は4月に始まり7月を通して続いており、最新のブラウザリリースには370件のセキュリティ修正が含まれ、今年これまでに修正されたバグの総数は1,800件を超えました。
Googleは、Chrome 149および150のリリースで1,072件のセキュリティ上の欠陥を修正しており、「これは直近23回分のマイルストーンで修正されたセキュリティバグの合計数を上回る」としています。
これは、Geminiを活用してChromeのコードベース全体からセキュリティ上の欠陥をより効率的に特定するエージェントハーネスを利用した結果だと、同社は説明しています。
このAIによる脆弱性検出の有効性を裏付けたのが、ブラウザ内に13年間潜んでいたサンドボックスエスケープの発見だったとGoogleは述べています。
CVE-2026-3545(CVSSスコア9.8)として追跡され、5月上旬にChrome 145で修正されたこの問題は、「侵害されたレンダラーがブラウザを騙してローカルファイルを読み取らせる」ことを可能にしていた可能性があると同社は述べています。
この脆弱性はNavigation機能におけるデータ検証の不備として説明されており、細工されたHTMLページを介してサンドボックスエスケープを実行するために悪用され得るものでした。
Chrome Securityチームは2023年からLLMの活用を始めていましたが、2026年初頭に構築されたエージェントハーネスこそが、ブラウザ内のより多くの欠陥の発見と修正に不可欠な役割を果たしてきました。
このハーネスはモデルの相互運用性をサポートしており、過去に特定されたCVE群やChromeのGit履歴全体を学習データとして用いています。さらに、開発者が提供するSECURITY.mdファイルを「批評役」エージェントが読み込んで活用するほか、脆弱性検出モデルをコードベースに対して複数回実行できる仕組みも備えています。
「私たちは安全性を念頭にこの仕組みをすべて構築しており、AIが予期しない挙動を示すリスクを軽減するためのガードレールを設けています。当社のAIはソースコードを静的な状態でのみ厳密に解析しており、一般的なインターネットアクセスを持たないロックダウンされたマシン上で動作しています」とGoogleは説明しています。
バグの検証、トリアージ、パッチ生成についてもAIに依存する一方で、同社はバグ検出のために他のセキュリティテストインフラも引き続き利用しており、脆弱性報奨金制度(VRP)を通じた研究者からの脆弱性報告も歓迎しているとしています。
「現時点で、私たちはほとんどの脆弱性に対してLLMに修正候補を生成させており、これによって最近のChromeリリースにおけるセキュリティ修正のペースが飛躍的に向上しています」とGoogleは述べています。
さらに同社は、新たなセキュリティ上のバグを「可能な限りコードの提出時点に近いタイミングで」特定・排除することや、単体では安全とみなされるコードに影響を及ぼしかねないツリー内の問題を無力化することにもAIを活用し、バグの発生自体を防ごうとしています。
パッチギャップの縮小とメモリ安全性バグの根絶
パッチギャップを縮小するため、Googleは週2回のChromeセキュリティリリースという運用体制も試験的に導入しています。これは、3月に発表された主要Chromeリリースの2週間サイクルを補完するものです。
「私たちは、セキュリティバグの修正からリリースノートおよびCVE記述の生成を自動化する取り組みを進めており、手作業によるボトルネックを解消し、脆弱性の発見から公表までの期間を短縮することを目指しています」と同社は述べています。
Googleはまた、更新の適用時にブラウザの再起動を不要にする動的パッチ適用や、シームレスなセッション復元、ウィンドウが閉じられた状態(すべてのウィンドウが閉じられていてもアプリケーションがバックグラウンドで動作している状態)での再起動といった仕組みを通じて、ユーザーの端末上でChromeが常に最新の状態に保たれるよう取り組んでいます。
さらにGoogleは、メモリ安全性に関する欠陥など、特定のクラスのセキュリティ問題をChromeから根本的に排除する取り組みも進めています。そのために、C++のバグを封じ込めるべくランタイム環境を堅牢化するとともに、メモリ安全な言語への移行を進めています。
この一環として、MiraclePtrをより多くのライブラリに拡大適用し、解放済みメモリ使用(use-after-free)の欠陥を無力化するためGPUのメインスレッドにMiracleObjectを導入しています。加えて、範囲外アクセスの脆弱性を排除するための「スパン化(spanification)」の取り組みや、整数オーバーフローを阻止するためのメモリ割り当て保護機能の統合も進めています。
長期的には、Googleは中央集約型のRust SDKの構築、欠陥の多いコードセグメントの大部分をRustで置き換える取り組み、そして新たなモジュール型コンポーネントをRustで記述する取り組みを通じて、ChromeのコードベースをRustのようなメモリ安全な言語へと移行しています。
「Rustに加えて、従来のC++フレームワークへの依存をさらに減らすため、ブラウザの最上位のユーザーインターフェースをHTML、CSS、TypeScriptで実装するといった選択肢も検討しています」とGoogleは補足しています。
同社によると、オープンソースソフトウェアのエコシステムの安全性を保つことも、Chromeユーザーの保護を強化するうえで重要な要素の一つです。同社は依存関係を最新の状態に保つため自動化された脆弱性スキャンパイプラインを活用しており、今後はChromeのすべてのサードパーティ依存関係を自動更新パイプラインへと移行させる方針です。
「発見・修正された一つひとつのバグは、攻撃者にとっての足がかりを一つ潰すことを意味します。しかし、バグを発見して修正することは戦いの半分に過ぎません。攻撃者がそのバグを悪用するよりも速く修正版を配布し、ユーザーに更新を適用してもらう必要があります。また、リリースサイクルの加速化、動的パッチ適用、タイミングを見計らった再起動を通じてバグのクラス自体を緩和・排除するプロジェクトにも投資することで、ユーザー体験を妨げることなく継続的に保護されるブラウザの実現を目指しています」とGoogleは述べています。