PR

 MacOS版のIE(Internet Explorer)に,セキュリティ・ホールが見つかった。セキュリティ・ホールはMacOS8.0.x以降のほとんどの版にある。MacOS版IEはとりあえずJava機能を無効にして使うべきだ。

 WebブラウザのJavaアプレット実行機能には「Javaアプレットは,自分が置かれていたホスト以外とは通信できない」というセキュリティ上の制約が課せられている。だがMacOS版のIEでは,アプレットが通信できてしまうという「穴」があった。このセキュリティ・ホールを悪用すれば,例えばファイアウォールで守られてるはずのイントラネット内のWebに置いた企業秘密を盗まれる可能性がある。

 この問題は,まず米国で「IE5と,MacOS上のJava実行環境MRJ(Mac OS Runtime for Java)2.2の組み合わせで発生するセキュリティ・ホール」として報告された。だが,日本のJava開発者らが参加する「JavaHouseメーリング・リスト」の有志が調査したところ,上記の組み合わせだけでなく,ほとんどのMacOSがセキュリティ・ホールを抱えていることが明らかになった。

 最近出荷が始まった「MacOS 9.0.4」では,MRJの最新版「MRJ2.2」とIE4.5を搭載しており,この組み合わせは安全。だが,それより古いMacOSでは,IEのJava仮想マシンとしてMRJの旧版「MRJ2.1.4」または「Microsoft VM for Java」が搭載されており,すべてアウト。さらに面倒なことに,最新版MRJ2.2はそれ単体やIE4.xとの組み合わせでは安全なのに,IE5と組み合わせるとやはり危険になる。結局,ほとんどのMacOSがセキュリティ・ホールを抱えていたことが分かった。

 特にMacOS版IEに見つかったセキュリティ・ホールは,ごく初歩的なミスに基づくもので,それだけに影響が大きい。

 問題への警告を発したJavaHouseメーリング・リスト世話人の高木浩光氏は,「このような単純なバグは基礎的な検査で検出できるはず。そのような検査もされずに出荷されていることは驚きだ」と話している。また高木氏は,「米Microsoftの場合はセキュリティ問題を受け付ける窓口を設けているが,米Apple Computerにはそのような窓口が見あたらない」とベンダー側の体勢の不備を指摘する。

 Microsoft側の体勢も万全ではない。同社が「Knowledge Base」(同社の技術サポート用Web)に5月22日付けで公開した「Internet Explorer の Java 仮想マシンの使用について」と題する文書では,今回見つかった問題について「暫定措置としてIE5のJava仮想マシンとしてMRJ 2.1.4 を使うよう」呼びかけており,日本で報告された「MRJ2.1.4も危ない」という情報が反映されていない。

 以上の件に関しては,「MacOS版IEのJavaにセキュリティ・ホール,大半のユーザーに影響--IEのJava機能は無効に」を参照されたい。

 なおWindows版のIEにも,先に別種のセキュリティ・ホール(ローカル・ディスク上のファイルを読めてしまう)が見つかっている。多くのWindowsユーザが,いぜん危険な状態にある。詳しくは下記の記事を参照されたい。

IEのJava機能はすぐ「無効」に!Java House MLがMicrosoft VMの新セキュリティ・ホールを警告

IEの新セキュリティ・ホールを警告,対策はJavaとJavaScriptの無効化

 これらのセキュリティ・ホールによる被害報告はまだない。だが,Java言語はもともとインターネット上で悪用されないように,厳重なセキュリティ機構を備えている点に大きな特徴がある。それだけに一連のセキュリティ・ホールは,その価値を損なうものとなりかねない。

 筆者が思い出すのは,Java技術が登場した1995年に,米Sun Microsystems社の技術部門のスポークスマンであるJohn Gage氏から聞いた言葉である。氏はこう言った。「Microsoftになくて,我々のJava技術にあるのは,高度なセキュリティ技術だ」と。

 その後,Microsoftはすべてのソフトウエアのインターネット対応を進め,その結果,膨大なセキュリティ問題に悩まされ続けた。有名なものでは,昨年メディアを騒がした「Melissa」ウイルスはWordマクロ,最近登場した「LOVE」ウイルスはVisual Basicスクリプトで作られている。どちらも,インターネット上で(メールにより)配布可能なプログラムである。

 これらは,インターネット上で配布するプログラム言語のセキュリティ機構が弱い場合,どのように悪用されるかを示す例といえる。こうした問題を起こさないための予防措置が,Javaのセキュリティ機構なのだ。だからこそ,Java技術に発見された「穴」は即座にふさぐ必要がある。

 今後ベンダには,より高い水準での品質管理と危機管理を望みたい。それと共に,利用者や開発者の間でも,セキュリティに対する意識を持って欲しいと思う。セキュリティ・ホールが発見されればそれを即座にふさぐ努力をすることは,ベンダだけでなく,開発者,さらには利用者を含めたJavaコミュニティ全体の義務といえる。