ククログ

株式会社クリアコード > ククログ > Thunderbird 128.11以降でファイル共有サーバー上のemlファイルを開けない問題の回避方法とその背景

Thunderbird 128.11以降でファイル共有サーバー上のemlファイルを開けない問題の回避方法とその背景

当社の法人向けThunderbirdサポートサービスにおいて、「ファイル共有サーバー上に置かれたemlファイル1をThunderbirdで閲覧しようとした場合に本文が表示されない」というトラブルのお問い合わせを頂きました。 お客様によると、この問題はThunderbird 128.10.1で発生し、128.10.2で一度は解消されたものの、128.11.1に更新したら再発し始めたとのことでした。

本記事では、この問題の回避方法と、問題が発生するようになった経緯および今後の見通しを詳しくご紹介します。

回避方法

本現象は、Thunderbirdの隠し設定を用いて、ファイル共有サーバーのIPアドレスおよびホスト名を明示的に列挙することで回避可能です。 具体的な手順は以下の通りです。

  1. アプリケーションメニューの「設定」、もしくはメニューバーの「ツール」→「設定」でThunderbirdの設定を開きます。
  2. mail.allowed_unc_hosts を検索します。
  3. 見付かった項目の右端の「編集」ボタン(鉛筆のアイコンのボタン)をクリックして値の編集を開始します。
  4. emlファイルが置かれる可能性があるすべてのファイル共有サーバーについて、IPアドレスおよびホスト名を半角カンマ(,)区切りで記述します。
    • 例えば、ファイル共有サーバーのIPアドレスが192.168.0.100192.160.0.101、ホスト名がfileserver1fileserver2であった場合は、指定値は192.168.0.100,192.168.0.101,fileserver1,fileserver2となります。
    • 同一のサーバーであっても、ホスト名からIPアドレスへの名前解決は自動的には行われないため、IPアドレスとホスト名の両方を指定する必要があります。
  5. Enterキーを押して変更を保存します。

法人で全端末を対象に設定を自動展開したい場合、この設定はグループポリシーでは制御できないため、AutoConfig(MCD)を使う必要があります。 例えば以下の要領です。

// autoconfig.cfg

lockPref("mail.allowed_unc_hosts", "192.168.0.100,192.168.0.101,fileserver1,fileserver2");

また、別解として、ファイル共有フォルダーにWindowsのドライブレターを割り当てて「ネットワークドライブ」にしネットワークドライブ上のファイルとして参照してemlファイルを開く方法もあります。

問題が発生するようになった背景

本現象は、bugzila.mozilla.orgにおいてBug 1971724 - Open .eml file on smb network folder fails (unless you add the remote host to mail.allowed_unc_hosts)としてトラッキングされており、ここから発生の経緯を詳しく辿ることができます。

本件のそもそもの発端は、Thunderbird 139.0.2および128.11.1のセキュリティアドバイザリに記載がある脆弱性CVE-2025-5986の修正にあります。 この脆弱性は、攻撃者によって加工されたHTMLメール本文内に mailbox://... で始まるURL(以下「mailbox: URL」)の攻撃用リンクが含まれていた場合に、無限のサイズのファイルが許可無くダウンロードされてローカルのストレージ領域を埋め尽くされたり、Windowsファイル共有のプロトコルを通じて認証情報をURLの参照先ホストに盗み取られたりする恐れがある、というものです。

mailbox: URLとはThunderbird内部でローカルのメールフォルダーの位置を示すために使われる特殊なURLで、具体的には mailbox:///C:/Users/(ユーザーアカウント名)/AppData/Roaming/Thunderbird/Profiles/(ランダムな文字列).default/Local%20Folder/Inbox?number=1 のような文字列です。 この例を見ると分かるとおり、mailbox: URLにはメールフォルダーの実体となっているmbox形式のファイルのパスがそのまま含まれています。 Windowsのファイル共有サーバーやSambaサーバー上にあるemlファイルを直接開いた場合、そのmailbox: URLは mailbox://///fileserver/shared/saved-message.xml?type=application/x-message-display&number=0" のようにファイル共有サーバーのホスト名を含むUNCパスをそのまま含んだ物となります。 メールの本文は送信者が自由に作成できるため、この仕様を悪用すると、「攻撃者が攻撃用のホストを立てておき、そのホスト上のパスを指すようなmailbox: URLを作ってメール本文に埋め込んで送る」ということが可能です。 そのようなメールを受信したThunderbirdが、便利機能の一環でmailbox: URLからのデータ取得を自動的に試みる結果として、攻撃用ホストへのリクエストが発生し攻撃が成立してしまう、というのがこの脆弱性の機序です。

この脆弱性は、Thunderbird 128.10.1において「UNCパスを含むmailbox: URLの読み込みを全面的に禁止する」という形で一旦修正が試みられたのですが、副作用として、ファイル共有サーバー上にあるmboxファイルやemlファイルを一切読み込めなくなりました。 この副作用は一般のユーザーにはそれほど影響がありませんが、法人利用では致命的な悪影響を及ぼす恐れがあります。 というのも、Windowsの法人運用においては、Windowsのユーザープロファイルを個々の端末ではなくファイル共有サーバーに置いておく形が取られる場合があり、そのような場合に先述の副作用の影響でThunderbird上でローカルのメールボックスの内容を一切読み込めなくなってしまうからです。 このため、この修正はThunderbird 128.10.2で一旦取り下げられた後、やり方を工夫して修正対応が再度行われ、改めてThunderibird 139.0.2と128.11.1に適用されました。 このとき再導入された解決策が、ユーザープロファイル内のメールフォルダーはUNCパスで参照してよいが、ユーザープロファイル外のemlファイルはUNCパスでの参照を禁止する、というものでした

この一連の推移を「ファイル共有サーバー上に置いたemlファイルを開く」操作を常用していたユーザーの視点で見ると、

  1. Thunderbird 128.10.0以前:emlファイルを開けた。
  2. Thundebrird 128.10.1:(脆弱性の修正の副作用で)emlファイルを開けなくなった。
  3. Thundebrird 128.10.2:(脆弱性の修正が取り下げられて)emlファイルを開けるようになった。
  4. Thundebrird 128.11.1:(脆弱性の修正の副作用で)またemlファイルを開けなくなった。

という見え方になっていたのでした。

また、このような経緯で発生している問題であるため、「当該ファイル共有サーバーをUNCパスでアクセスしてよい対象として明示的に許可する」もしくは「ドライブレターを割り当ててネットワークドライブにし、UNCパスではなく通常のファイルパスでアクセスする」とすれば、制限を受けずにemlファイルを開けるわけです。

まとめ

以上、Thunderbirdの更新で再発するようになった「ファイル共有サーバー上のemlファイルを開けない」問題の発生経緯と回避策についてご紹介しました。

脆弱性の性質上、本件は「元の動作に戻す」選択肢がとられる可能性は低いと考えられます。 Bug 1971724においても、原因はこのように特定されているものの、修正の方向性は示されていません。 「修正」されることにはあまり期待しないで、前述の回避策をとって運用するのがお勧めです。

株式会社クリアコードは、お客さまからのお問い合わせに基づいて、オープンソース製品であるThunderbirdのソースコードまでも対象にした調査や、トラブルの解決方法のご提案などを行うサポートを、有償にてご提供しています。 Thunderbirdの運用でお困りのことがある企業のシステム管理・運用ご担当者さまは、是非ともお問い合わせフォームよりご連絡下さい。

  1. 単体のメールをファイルとして保存したときの形式。