画像提供:マイナビニュース

写真拡大

●Firefox 54のインストール

Mozillaは、6月13日(現地時間)にFirefoxの新バージョンとなる「Firefox 54」をリリースした。前バージョンの53からは、53.0.2と53.0.3がリリースされている。53.0.2では、以下の修正、セキュリティアップデートが行われた。

フォームバリデーションエラーや日付選択パネルが正しく表示されるように

window.findの非標準showDialog引数が無視されるように

ANGLEにおける解放後使用

53.0.3では、以下の修正が行われた。

NTLM認証とともにプロキシを使用した際に生じるハングの修正

キャプティブポータル判別サービスによる過度なリソース使用の修正

組み込みセキュリティ情報の期限切れ時間を延長

したがって、今回のアップデートは、53.0.3からとなる。本稿では、Firefox 54の新機能ついて紹介したい。

○Firefox 54のインストール

Firefox 54への自動アップデートであるが、ようやく可能になったようである。いつもと同じであるが、Firefoxメニューの[ヘルプ]→[Firefoxについて]を開くと更新が自動的に開始される。[Firefoxを再起動して更新]をクリックする(図1)。

新規に、Firefox 54をインストールする場合、FirefoxのWebページからインストーラをダウンロードする(図2)。

[Firefox無料ダウンロード]をクリックし、保存したファイルをダブルクリックして、

インストールを開始する(図3)。

画面の指示に従い、インストールを進めてほしい。

●Firefox 54の新機能

○Firefox 54の新機能

Firefox 54の新機能であるが、以下の通りである。

ダウンロードボタンとダウンロード状況パネルを簡素化

複数コンテンツプロセス(e10s-multi)対応を追加

ビルマ語(my)ロケールを追加

また、変更点は、以下の通りである。

「モバイルのブックマーク」フォルダを、より簡単にアクセスできるよう、メインのブックマークメニューへ移動

さて、今回のアップデートの注目点は、マルチプロセスへの対応を強化であろう。マルチプロセスについて、改めて紹介しておこう。従来のFirefoxでは、1つのプロセスで動作をしていた。したがって、1つのタブがクラッシュすると、他のすべてのタブに影響することもあった。そこでマルチプロセスでは、まずユーザーインターフェイスとコンテンツを分割する。さらにコンテンツを複数のプロセスに分けることで、タブの応答性への影響を軽減するものである(過去にも実装の計画が存在していた)。Electrolysisと呼ばれ、eとsに10文字あることから、e10sと表記される。

Firefox 53まででもマルチプロセスへの対応は行われてきた。しかし、有効化は一部のユーザーにのみ限定されていた。しかし、Firefox 54では、ほとんどのユーザーに対し、マルチプロセスが有効化されている。マルチプロセス化のメリットであるが、

レンダリングスピードの高速化

クラッシュの減少

メモリ消費が少なく

があげられる。その一方で、デメリットは、

マルチプロセスに対応しないアドオンが使用不能

である。これは、Firefox 57にむけて、従来型アドオンのサポート終了とWebExtensionsへの移行が同時に進められている。本稿では、その確認や対策を紹介したい。まず、マルチプロセスの確認である。アドレスバーに「about:support」と入力する。図4のように、トラブルシューティング情報が表示される。

ここで[マルチプロセスウィンドウ]を確認する。「規定で有効」となっていれば、マルチプロセスは有効である。さて、どうしても動かしたいアドオンがある場合、以下の方法がある。まず、アドレスバーに「about:config」と入力する。図5のような警告がでる。

[危険性を承知の上で使用する]をクリックし、次へ進む。設定一覧が表示される(図6)。

変更する設定は、次の3つである。

extensions.e10sBlocksEnabling → true

extensions.e10sBlockedByAddons → true

browser.tabs.remote.force-enable → false

一例で、extensions.e10sBlockedByAddonsを変更してみよう。図6の検索ボックスに「extensions.e10sBlockedByAddons」と入力する。

値が「false」になっている。この行をダブルクリックし、値を「true」に変更する。

同様に、残りの2つも変更してほしい。場合によっては、すでに変更すべき値になっていることもある。また、設定名が存在しない場合は、真偽値で値を新規作成する。以上の変更を行うと、先ほどのトラブルシューティング情報が、図9のようになる。

[マルチプロセスウィンドウ]が「アドオンにより無効」となり、マルチプロセスが無効化されている。あくまでも回避的な対策にすぎない。今後進むマルチプロセス化によっては、対策とならない可能性もあるので注意してほしい。

●セキュリティアップデート

○セキュリティアップデート

今回のバージョンアップでは、以下のセキュリティアップデートが行われた。

ツリー再生成中の破棄済みノード使用による開放後使用[最高]

docshell再読み込み中の開放後使用[高]

track要素における開放後使用[高]

コンテンツビューアーリスナーにおける開放後使用[高]

IME入力による開放後使用[高]

ImageInfoオブジェクトを伴うWebGLにおける境界外読み取り[高]

Firefoxのインストーラーと同一ディレクトリー上のDLLファイルを通じた特権昇格[高]

XHRヘッダーエラー記録中の開放後使用と調査後使用[高]

IndexedDBにおける開放後使用[高]

Graphite 2ライブラリにおける脆弱性[高]

Opusエンコーダーにおける境界外読み取り[高]

AndroidインテントURLを用いたローカルファイルシステムへの遷移実現[高]

Mozilla Windows UpdaterとMaintenance Serviceのコールバック引数を通じたファイル改ざんと特権昇格[高]

Mozilla Maintenance Serviceのhelper.exeアプリケーションを通じたファイルの削除と特権昇格[中]

リーダーモードにおけるロケーションバー偽装[中]

Mac上のフォントが一部のUnicode文字を空白として描画してしまう[中]

カナダ音節文字などUnicodeブロックの組み合わせによるドメイン偽装[中]

実行ファイル保存時の「Mark of the Web」回避[中]

updater.ini、Mozilla Windows UpdaterおよびMozilla Maintenance Serviceを通じたファイルの実行と特権昇格[高]

Mozilla Windows UpdaterとMozilla Maintenance Serviceを通じた特権昇格と任意のファイル上書き[中]

Mozilla Maintenance Serviceを通じた任意のファイルからの32バイトの読み取り[中]

JavaScriptと全画面表示モードを通じたロケーションバー偽装[中]

Firefox 54で修正されたメモリ安全性の問題[最高]

Firefox 54とFirefox ESR 52.2で修正されたメモリ安全性の問題[最高]

[最高]が3個、[高]が13個、[中]が8個と合計24の修正がある。今回もかなり修正となっている。すみやかにアップデートすべきだろう。