『Office 2003 SP3』の「古いフォーマット排除」問題
2008年1月 6日
まだご存じないかもしれないが、米Microsoft社から最近リリースされた更新プログラム『Microsoft Office 2003 Service Pack 3(SP3)』には、隠れた「機能」が搭載されている。
古いバージョンのMicrosoft Officeフォーマットがサポートされなくなるという機能だ。旧バージョンの『Word』『Excel』『Lotus 1-2-3』『Quattro Pro』『CorelDRAW』による文書がハードディスクなどにある場合、開こうと思ったらWindowsのレジストリを詳しく調べなくてはならない。
Microsoft サポートセンターに掲載された通知(日本語版)では、「これらのファイル形式は安全性が比較的低いため、デフォルトではブロックされます」と説明しており、「これらのファイル形式は、ユーザーに危険をもたらす可能性があります」と警告している。
どのファイルがブロックされるのかは、環境によって多少変わってくる(ネットワーク管理者が任意のファイルフォーマットをレジストリに追加できるため)。しかしデフォルト設定の場合、『Office 97』よりも以前からあるフォーマットのファイルのほとんどは開かないようだ。
この変更で特に厄介な部分は、簡単な回避方法がない点だ。Office 2003 SP3で古いファイルを開くためには、Windowsのレジストリを書き換えなければならない。
一般的なユーザーの場合、大事な文書を多数、旧フォーマットで保存しているということは少ないと思われるので、互換性の低下によるこの種の不都合は、気づかないまますんでしまうかもしれない。しかし、大企業や学術的なネットワークで、重要文書を長期間保持していく必要がある人々にとっては、当然のことながら混乱のもとになる。『Slashdot』のスレッドで1人の投稿者が指摘しているように、大規模な機関では状況は非常に複雑だ。
- 変換する必要のあるファイルを特定する簡単な方法がない。旧ファイルも現在のファイルと同じファイネーム仕様を使用しているのに、これを素早く識別するためのツールやフラグはMicrosoft社から提供されていない。区別がつくのは、Office 2003 SP3で開けないという事実によってだけだ。
- 既存のファイル変換ツールはあるとはいえ、有料なうえ、ITサポートスタッフが手の届かないような方法で保管されているファイルには役に立たない(たとえば、鍵のかかったファイリング・キャビネットに保管されたCD-ROMの中といった場合だ)。
- 古い文書を変換するには、ばかばかしいほど複雑なレジストリの書き換えを行なわなければならず、たとえば、ディレクトリ・サービス・システムの『Active Directory』によるグループ・ポリシーを適用するといった、簡単な方法がない。各種ツールとログインスクリプトを無理やり使うような、エラーを起こしやすい方法をとるしかない。
こうした状況にさらに追い討ちをかけるように、この変更に関して、Microsoft社からは納得のいく説明がなされていない。
ファイルフォーマット自体の安全性が低いわけではなく、自らバッファオーバーフロー攻撃といったものを許すわけでもないわけで、脆弱性は、ファイルを開いて攻撃の実行を許してしまうプログラム側に存在する。つまり、問題は古い形式の文書にあるのではない。にもかかわらずMicrosoft社は、Officeに存在する安全性の低いコードを修正しようとせず、単にこれらの脆弱性につけこまれやすいフォーマットをブロックすることにしたわけだ。
この変更の影響を受ける旧文書を開きたい場合は、Microsoft社の説明によれば唯一の選択肢である、レジストリの書き換えを試みるしかない。
もちろん、これより多少は簡単で(無料の)代替手段はある。古いファイル・フォーマットを扱える『OpenOffice』をダウンロードすることだ。
これを機会に、開いた文書はすべて『OpenDocument Format』(ODF)に変換してしまうというのは良い考えだろう。『Office 2017』あたりがリリースされたときに、またそれまでのファイル・フォーマットがサポートされなくなったとしたらたまらないから。
[日本語版:ガリレオ-向井朋子/小林理子]