2025/05/28 00:48 A privilege escalation from Chrome extensions (2023)

ロボ子、今日のITニュースはChrome拡張機能のセキュリティ制限とサンドボックスエスケープについてじゃ。

サンドボックスエスケープですか。難しそうな話題ですね。

難しくないぞ!拡張機能はパスワードやCookieを盗む可能性があるけど、exeファイルを実行するにはユーザーの許可が必要なんじゃ。でも、サンドボックスエスケープが起きると、ユーザーの許可なしに実行ファイルを実行できるようになるから危険じゃ。

なるほど。ユーザーの許可なしに実行ファイルが実行されると、OSへの攻撃につながる可能性があるんですね。

そうじゃ!さらにChromeOSでは、ブラウザとOSが密接に結合しているから、`chrome://` URLでコードを実行すると、ネットワーク設定の変更やファイルの編集など、ユーザーができること全てが可能になるんじゃ。

`chrome://` URLでそんなに色々できるんですね!知りませんでした。

じゃろ?そして、CVE-2023-4369という脆弱性があって、ChromeOSのファイルマネージャー(`chrome://file-manager`)で、ダウンロードしたHTMLファイルを実行できるんじゃ。

ダウンロードしたHTMLファイルを実行ですか?それがどうして問題なんですか?

それがCSP(Content Security Policy)を回避して、`chrome://file-manager`のオリジンでコードを実行できるようになるんじゃ。`Mojo`や`chrome.send()`などのIPCライブラリにもアクセスできるようになるから、他のChromeページのソースコードを読み取ることだってできる。

それは大変ですね!具体的にはどうやって悪用されるんですか?

悪意のあるHTMLファイルをダウンロードさせて、`filesystem:chrome://file-manager`パスで開かせることで、XSS(クロスサイトスクリプティング)攻撃が可能になるんじゃ。ユーザーハッシュを`chrome.downloads` APIから取得して、ファイルパスを構築する必要があるぞ。

XSS攻撃ですか。ファイルマネージャーのオリジンでコードが実行されると、他のファイルを読み取ったり、データを拡張機能に送信したりできるんですね。

その通り!さらに、`chrome://file-manager`のオリジンでコードを実行するために、`chrome.fileManagerPrivate` APIへのアクセスを試みることもできるんじゃ。

`chrome.fileManagerPrivate` APIにアクセスすると、何ができるようになるんですか?

ユーザーのカメラやマイクを許可なしに使用したり、ダウンロードしたファイルの読み書きが可能になるんじゃ。Crostini(Linuxターミナル)の設定を変更して、悪意のあるコードを`.bashrc`ファイルに挿入することもできる。

そこまでできると、かなり深刻な影響がありますね。

じゃろ?しかも、Image Loader拡張機能にも同様の脆弱性が存在したんじゃ。`filesystem:chrome-extension://pmfjbimdmchhbnneeidfognadeopoehp/external/Downloads...`のようなURLを使って、スクリプトを実行できる。

Image Loader拡張機能にもですか!それは広範囲に影響がありそうですね。

でも安心して!これらの脆弱性はすでに修正されていて、ファイルマネージャーの脆弱性はCVE-2023-4369として登録され、ChromeOS 116で修正されたんじゃ。

修正されたんですね!それは良かったです。発見者には合計$10,000の報酬が与えられたんですね。

そうじゃ!今回の脆弱性の根本原因は、`filesystem:` URLがブラウザでレンダリング可能であることと、ChromeOSが古いJavaScript APIを使用していることにあるんじゃ。

なるほど。古い技術が思わぬ脆弱性につながることがあるんですね。

そういうことじゃ。今回の教訓は、常に最新の技術を学び、セキュリティアップデートを怠らないことじゃな!

はい、博士!私も気をつけます。ところで博士、もし私がハッカーになったら、どんな名前が良いと思いますか?

うむ、そうじゃな…「ロボハッカーZ」とかどうじゃ?

ちょっとダサくないですか?
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。