米Mozillaは6月6日(現地時間)、Webブラウザ Firefoxの新バージョンとなる「Firefox 114」をリリースした。Firefox 113から4週間でのバージョンアップとなった。Firefox 113では、2023年5月12日にマイナーバージョンアップの113.0.1が、2023年5月23日に113.0.2がリリースされている。113.0.1では、以下の修正が行われた。

  • Windows:モニター/ディスプレイカラープロファイルがインストールされている環境、特に広色域ディスプレイで色が正しく表示されない問題の修正
  • 一部の構成で、全画面ウィンドウの周囲に境界線が表示される問題の修正
  • 一部の構成で、全画面モードでビデオを視聴しているときにティアリング(一種のずれ)が発生する可能性がある問題の修正

このマイナーバージョンアップでは、セキュリティアップデートは行われなかった。113.0.2では、以下の修正が行われた。

  • Windows 11またはFancyZonesがインストールされているシステムでピクチャインピクチャウィンドウがスナップできない問題の修正
  • 開発者ツールのWebコンソールを開いた状態で一部のページをロードすると、Firefoxがフリーズする可能性がある不具合の修正
  • ブックマークと履歴のサイドバーが、ブラウザウィンドウの垂直方向のサイズ変更操作に対し、適切に反応しない原因となる不具合の修正

このマイナーバージョンアップでは、セキュリティアップデートは行われなかった。今回は、113.0.2からのアップデートとなる。

Firefox 114のインストール

すでに自動アップデートが可能な状況になっているが、ここでは手動でアップデートする方法を説明したい。Firefoxメニューの[ヘルプ]→[Firefoxについて]を開くと更新が自動的に開始される。[再起動してFirefoxを更新]をクリックする(図1)。

  • 「Firefox 114」を試す - DNS over HTTPS例外リストが管理可能に、ほかWebTransportがデフォルトで有効に

    図1 Firefox 114へのアップデート

アップデート後のFirefox 114は、図2のようになる。

  • 図2 バージョン114にアップデート直後のFirefox

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

  • 図3 Firefoxのダウンロードページ

[Firefoxをダウンロード]をクリックし、保存したファイルをダブルクリックして、インストールを開始する(図4)。

  • 図4 Firefox 114のインストール

画面の指示に従い、インストールを進めてほしい。以下では、新機能のいくつかを具体的に見ていこう。

Firefox 114の新機能

続いて、新機能であるが、以下のとおりである。

  • DNS over HTTPSの例外リストを管理するためのUIを追加。[設定]→「プライバシーとセキュリティ」一部に配置され、サポートされているすべてのモードが選択可能に
  • [ブックマーク]メニューからブックマークを検索できるように。[ブックマーク]メニューにアクセスするには、[ブックマーク]メニューボタンをツールバーに追加する
  • ローカルの閲覧履歴から検索が可能に。[履歴]、[ライブラリ]または[アプリケーション]メニューボタンから[履歴を検索]を選ぶ。ローカルの履歴から検索可能となる
  • macOS:サポートされているすべてのネイティブ解像度でカメラからビデオをキャプチャ可能に。結果、1280x720を超える解像度が有効に
  • 拡張機能パネルにリストされている拡張機能を並べ替えることが可能に
  • macOS、Linux、およびWindows 7:USB経由でFIDO2/WebAuthn認証システムを使用可能に。パスワードレスのログインなどの一部のログイン機能では、認証システムにPINを設定する必要がある
  • Pocketのおすすめコンテンツがフランス、イタリア、スペイン語でも閲覧可能に

DNS over HTTPSの例外リストの前に、DNS応答について復習しよう。DNS応答に限らず、インターネット技術の多くが、かつては平文で通信が行われていた。DNSも中間者攻撃や内容の盗聴や改ざんといった脅威に晒されていた。

そこで、DNS応答に関しても、さまざまはセキュリティ対策が講じられてきた。初期のものとしては、DNSSECによる電子署名の検証があった。しかし、対応するサーバーが少ない、通信経路が平文であるといったことから、第三者の盗聴に対しては、それほど強固ではなかった。

その後、DNS over TLSやDNS over DTLSといった、DNS応答での暗号化が実装されるようなる(TLSやDTLSが、何を意味するかはおわかりだろう)。安全性やプライバシーの保護レベルは向上したが、クライアント側の変更を伴い、その導入コストも決して低いものではなかった。

そこで、新たな技術として注目されているのが、DNS over HTTPSである。暗号化として普及率の高いHTTPS(Hypertext Transfer Protocol Secure)を用いるのである。DNS over TLSやDNS over DTLSよりも、簡単に導入できるのが長所といえるだろう。

DNS over HTTPSの例外リストは、Firefox 114では、[設定]→[プライバシーとセキュリティ]で、設定可能となった。

  • 図5 プライバシーとセキュリティのDNS over HTTPS

図の右上にある[例外を管理]をクリックする。ここの除外するWebサイトのアドレスを登録していく。

  • 図6 強化型トラッキング防止機能の例外

4つのモードがあり、デフォルトは[規定の保護]である。安全なDNSをいつ、どのように利用するかをFirefoxが判断する。[強力な保護]では、安全なDNSを利用するかをユーザーが判断する。[最大限の保護]では、つねに安全なDNSを使用し、安全なDNSが利用できない場合には警告が表示される。つまり、この設定が有効になっていると、Webサイトは読み込まれないか、最小限の機能しか利用できない。[オフ]は、本機能を無効にする。

ブックマークからのお気に入りの検索は、ツールバーにある[ブックマーク]にある[ブックマークを検索]を選ぶ。

  • 図7 [ブックマークを検索]を選択

すると、アドレスバーに検索ボックスとその下に保存されたブックマークなどが表示される。

  • 図8 ブックマークを検索

同様に履歴の検索では、[履歴]、[ライブラリ]または[アプリケーション]メニューボタンから[履歴を検索]を選ぶ。

  • 図9 [履歴を検索]を選択

ブックマーク同様、アドレスバーに検索ボックスと、保存された履歴の一覧が表示される。

  • 図10 履歴を検索

アドレスバーのルーペの右が今度は「履歴」となっているのがわかるだろう。

また、Webプラットフォームでは、

  • WebTransportが、Firefox 114からデフォルトで有効になった。元のExplainerが指摘しているように、WebTransportなしでは処理が困難または不可能な複数のユースケース、特にゲームやライブストリーミングが可能となる。WebSocketなどの代替メカニズムで問題となるケースについても検討されている。WebTransportは、HTTP3上に構築されており(HTTP2 のサポートは今後の予定である)、Firefoxでの現在の実装は、565件のWebプラットフォームテストのうち505件に合格している

上述のように、近年、Webサービスの多くで、リアルタイムの双方向性が求められるようになってきた。SNS、オンラインゲームなどが該当する。HTTPでは、1つのコネクションに対し、1つのリクエスト、しかもクライアントからの一方通行でしかなかった。

そこで、開発されたのが、WebSocketである。サーバーとクライアントの双方向通信が可能となった。しかし、問題もあった。WebSocketはTCP上に構築されており、到達保証や順序保証といった信頼性の高さが特徴であるが、Head-of-Lineブロッキングという欠点も持ち合わせていた。これは「1つでもパケットをロストすると、後続のパケットが利用できない」というものだ。映像ストリーミングなどでは、ややもすると、障害にもなりかねない。

そこで、信頼性を考慮しない方式としてWebRTCが生まれた。UDP上で動作するので、パケットの到達や順序が保証されない。その代わり、ビデオチャットのようなサービスには、うってつけであった。

さらに、WebSocketとWebRTCを比較すると、WebSocketはサーバー・クライアントでの接続を前提としているのに対し、WebRTCではPeer to Peer方式を前提としている。この違いも、実際の利用において制限となることも少なくなかった。

これらの問題点を克服するために開発されたのが、WebTransportである。WebTransportではh、プロトコルにはQUICを採用する。UDP上に構築されたプロトコルであるが、TCPの信頼性をも有するという二面性を持ち、今後の双方向通信の新たな枠組みとして期待されている。

他にも、Webプラットフォームでは、以下の追加や変更が行われた。

  • DOM(Document Object Model。HTMLやXML文書を取り扱うためのAPI):DendedWorkerとSharedWorkerでのESモジュールのサポートが追加
  • CSS:無限定数とNaN定数がcalc()関数内でサポート

開発者向けでも、いくつかの変更、機能追加が行われている。詳しくは、リリースノートを参照してほしい。

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

同時に行われたセキュリティアップデートであるが、修正された脆弱性はCVE番号ベース で4件である。深刻度の内訳は、4段階で上から2番目の「High」が3件、4段階で上から3番目の「Moderate」が1件となっている。

「High」では、

  • レンダリングラグに起因するクリックジャッキングの証明書例外
  • Firefox 114、Firefox ESR 102.12で修正されたメモリ安全性の問題
  • Firefox 114で修正されたメモリ安全性の問題

などが対応された。今回のアップデートでは、ルック&フィールに関わるような変更は少ない。しかし、セキュリティなどで重要なアップデートが行われている。早めのアップデートを推奨したい。