ニュース

パスワードを盗む拡張機能が「Google Chrome」のストアに? セキュリティ研究者が警鐘

最新の「Manifest V3」拡張機能でパスワード詐取を実証、ストア審査も通過

最新の「Manifest V3」拡張機能で「Google Chrome」のテキストフィールドからパスワードを盗み出せることを実証した論文

 ウィスコンシン大学マディソン校のセキュリティ研究者らが、最新の「Manifest V3」拡張機能で「Google Chrome」のテキストフィールドからパスワードを盗み出せることを実証したとのこと。米Malwarebytesが9月5日(現地時間)、公式ブログで話題にしている。

 拡張機能はいわばWebブラウザー上で動作する小さなアプリで、ユーザーが許可した範囲内でWebブラウザーの機能にアクセスし、その機能を実現する。一般に多くの権限が与えられれば与えられるほど拡張機能の自由度は高まり、強力になるが、その一方でユーザーの意図しない・悪意ある行動もやりやすくなる。

「Google Chrome」拡張機能をインストールする際のポップアップ。拡張機能に与える権限を確認し、過剰であると判断すれば拒否できる
拡張機能に与えられた権限は「拡張機能マネージャー」でも確認できる

 「Manifest V2」までの拡張機能は比較的自由で、その結果、悪意ある拡張機能がユーザーの個人情報を盗み取ったり、「Google Chrome」の挙動を勝手に変えてしまうということが頻発した。一方で、権限はあまり細かくは分割されておらず、「Chrome ウェブストア」の審査も十分に機能していなかった。

 最新の拡張機能仕様「Manifest V3」はこの点を反省し、権限をより細かい単位に分割。さらに、これまで拡張機能のやりたい放題だったことの多くをWebブラウザーが管理するようにしたことで、ユーザー側によるコントロールが容易になった。このことはストアの審査プロセスにとっても都合がよく、プラットフォーム全体でセキュリティが向上するであろうと期待されていた。

 しかし、Webブラウザーのテキストボックスにおけるセキュリティを包括的に分析したこの論文によると、まだ権限の粒度は十分に細かいとは言えず、閲覧ページへのアクセス権限さえあれば、拡張機能はHTMLページのテキストボックスからパスワードのような機密性の高いユーザー情報を盗むことができるという。HTMLページには機密性の高い部分とそうでない部分があるが、そこにはセキュリティ境界がなく、拡張機能は比較的自由にアクセスできる。

閲覧ページへのアクセス権限さえあれば、HTMLページのテキストボックスからパスワードのような機密性の高いユーザー情報を盗むことができる
HTMLページには機密性の高い部分とそうでない部分があるが、そこにはセキュリティ境界がなく、拡張機能は比較的自由にアクセスできる

 研究者らはこれを実証するため、実際にパスワードを盗める拡張機能を「概念実証」(PoC)として作成。「Chrome ウェブストア」の審査に出したところ、そのまま合格して掲載されてしまったという(審査に合格後、速やかに削除済み)。

 彼らによると、「Chrome ウェブストア」に掲載されている拡張機能のうち、12.5%は本脆弱性を悪用するのに十分な権限(パーミッション)が与えられており、パスワードフィールドに直接アクセスする拡張機能も190個特定しているとのこと。

 つまり、「Chrome ウェブストア」に掲載され、かつ最新の「Manifest V3」拡張機能であっても安心することはできないというわけだ。

 研究者らは、機密性の高いテキストフィールドを実装するJavaScriptパッケージをWebサイト開発者がボルトオンで適用できる形で提供する、拡張機能が機密性の高いテキストフィールドにアクセスした際にユーザーへ警告を発する仕組みをWebブラウザーレベルでビルトイン実装するといった解決策を取るよう呼び掛けている。