ニュース

「Google Chrome」にコードを注入する無作法なアプリは排除へ ~来年から段階的に実施

よりモダンな仕組みへの移行を進め、安定性の向上を図る

公式ブログ“Chromium Blog”

 米Google Inc.は11月30日(現地時間)、Windows版「Google Chrome」に対するサードパーティ製アプリのコードインジェクションを排除していく方針を明らかにした。“行儀の悪い”アプリを排除することで、「Google Chrome」の安定性向上を図るという。

 コードインジェクションとは、特定のプログラムに外部からコードを注入(インジェクト)して、開発者が意図しない、本来の動作とは異なる挙動を実現する手法。Windows版「Google Chrome」のユーザーの約2/3はウイルス対策ソフトやユーザー補助ソフトを利用しているが、そのなかには「Google Chrome」とデータをやり取りするためにコードインジェクションを利用しているものが少なくない。

 しかし、同社によるとコードインジェクションを行うアプリがインストールされた環境では、「Google Chrome」のクラッシュが15%増えるという。一方、最近の「Google Chrome」には“Native Messaging”をはじめとしたネイティブアプリとの対話を行うためのよりモダンな仕組みが整備されてきており、かならずしもコードインジェクションに頼る必要はなくなっている。

 同社によると、コードインジェクションのブロックは3つのフェーズに分けて段階的に実施される。

 まず、2018年4月にリリースされる「Google Chrome 66」から、外部アプリのコードインジェクションが原因のクラッシュが発生するとそれをユーザーに警告し、そのアプリを更新または削除するように促すようになる。

外部アプリのコードインジェクションが原因のクラッシュが発生するとそれをユーザーに警告し、そのアプリを更新または削除するように促すように(同社ブログより引用)

 次に、2018年7月にリリースされる「Google Chrome 68」からは、コードインジェクションのブロックが開始される。コードインジェクションのブロックにより「Google Chrome」が起動できなくなった場合は、ブロックを解除して再起動し、コードの注入を許可するが、その際は当該アプリを削除するように促す警告が表示される。

 しかし、この猶予措置も2019年1月にリリースされる「Google Chrome 72」を最後に打ち切られ、以後は常にコードインジェクションがブロックされるようになる。

 なお、Microsoftが署名したコードやアクセシビリティツール、IMEはブロックの例外となるとのこと。