ソフトウェア

Google ChromeにはGoogleだけがアクセスできる隠しAPIがプリインストールされていることが判明、EdgeやBraveなどのChromiumベースのブラウザも同様


JavaScript Registry(JSR)やDenoの開発者であるLuca Casonato氏が、Google純正のウェブブラウザであるGoogle ChromeにはGoogle関連のウェブサイトしかアクセスできないAPIがプリインストールされていると指摘しています。

Casonato氏によると、Google ChromeはすべてのGoogle関連サイトにシステムおよびタブ上でのCPU使用率・GPU使用率・メモリ使用率といった情報への完全なアクセス権限を付与しています。他にも、より詳細なプロセッサ情報へのアクセス権限や、ログを記録するバックチャンネルへのアクセス権限も付与しているそうです。これらを実現するAPIは、他のウェブサイト向けには公開されておらず、Googleが自社サイトでのみ利用しているものであると、Casonato氏は指摘しています。


「この事実は、ブラウザベンダーが自社のウェブサイトを他のウェブサイトよりも優遇すべきではないという考え方に明らかに違反しているため、興味深いものです。デジタル市場法(DMA)はこの考えを明確に法律で禁止しており、ブラウザベンダーがインターネット上のゲートキーパーとして、すべての人に同じ機能を提供しなければいけないとしています」


「DMAの解釈によっては、Googleの関連ウェブサイトにのみ情報を公開することで、法律違反とみなされる可能性があります。例えば、この機能によりZoomはGoogle Meetと同じCPUデバッグ機能を提供することができないため、不利になります」と述べ、DMAに違反している可能性を示唆しました。


Casonato氏によると、APIはユーザーの手では無効化することができない組み込み型のChrome拡張機能として実装されており、拡張機能パネルにも表示されない模様。ただし、APIのソースコード自体はここからチェック可能です。なお、Casonato氏は「同じ拡張機能が他のChromiumブラウザ(Chromeと同じChromiumをベースとしたウェブブラウザ)に搭載されているかは不明です」と言及しています。


その後の調査で、Microsoft Edgeでは問題の拡張機能がプリインストールされており、Google関連のウェブサイトがCPU・GPU・メモリの使用率などの情報を読み取り可能となっていることが判明。


セキュリティやプライバシーに配慮したウェブブラウザとして知られるBraveも、ChromeやEdgeと同じように拡張機能がプリインストールされていることが明らかになっています。


この拡張機能の存在はインターネット掲示板のHacker News上でも話題になっています。

Google Chrome has an API accesible only from *.google.com | Hacker News
https://news.ycombinator.com/item?id=40918052


問題のAPIは「hangout_services」という名称であることから、2022年に終了してGoogleチャットに移行した「Googleハングアウト」用に開発されたものであることが推測できます。あるユーザーは、「忘れてしまった人のために言っておくと、GoogleハングアウトはWebRTCのベースとなったブラウザ上でビデオ通話が行える最初のアプリケーションでした。このAPIは通常、アプリが取得しないCPU・GPU・メモリの使用状況やハードウェアの詳細情報を取得し、アプリ側に送信します。私の推測では、Googleは今回の騒動に対してAPIを削除することで対応するでしょう。なぜならGoogleハングアウトはすでに廃止された製品だからです。サーバー側のコードがまだこのAPIを利用していたとしても、間違いなく削除できます。恐らく、Chromeチームは複数のウェブサイトでWebRTCのパフォーマンスを独自に監視しているはずだからです」と指摘していますが、別のユーザーは「これは現在進行形でGoogle Meetで使用されているAPIです。Chromeでmeet.google.comの『トラブルシューティング』パネルを開くと、システム全体のCPU使用率レポートがリアルタイムで表示されます」と語り、APIが現在も使用されているものであると言及しました。

一方で、問題のAPIが実装されていないFirefoxでもGoogle Meetが問題なく動作するため、APIが削除されてしまったとしても問題ないというもあります。Googleで働いていた経験があるというユーザーは、「見せかけだけのために行われたブランド変更に合わせて、古いコードの名前を変更するようなことはないと断言できます。怠惰からではなく、単に価値がゼロでリスクがあるだけだからです」と、APIの名称がサービス移行先のGoogleチャットに合わせたものになっていなかった理由に言及しています。

また、別の自称元Google従業員は、APIを通じてWebRTCの基礎となる知識をGoogleが習得できたのではないかと推測し、「このAPIによってWebRTCの実現が早まったのではないかと思います。私が何かを見逃していない限り、このAPIは2008年からデータを収集していました。これに対して、WebRTCの初版がリリースされたのは2011年のことです」と語っています。

この記事のタイトルとURLをコピーする

・関連記事
Googleの検索アルゴリズムに関する内部文書が流出、Chromeのデータをページランク付けに利用するなどGoogleのウソが明らかに - GIGAZINE

GoogleがManifest V2の非推奨化を再開、Chromeで将来的に広告ブロッカーを制限する計画が前進 - GIGAZINE

Chromeの新しいターゲット広告用ユーザートラッキングを無効にする方法 - GIGAZINE

閲覧履歴を元に興味・関心をブラウザが推測して広告主と共有する機能など、プライバシーサンドボックスに含まれるAPIを段階的に有効化していくとGoogleが発表 - GIGAZINE

双方向にリアルタイムで通信可能なAPIなど多数のAPIが追加されたGoogle Chrome 97安定版リリース - GIGAZINE

in ソフトウェア, Posted by logu_ii

You can read the machine translated English article here.