2000年8月11日  

 Java実行環境に新たなセキュリティ・バグ「Brown Orifice」が見つかった。バグの内容は2種類ある。一つはJDK1.1.x以前のJavaのコア・ライブラリに含まれているバグで,任意のクライアントからアクセス可能なJavaサーバーを作れてしまう。もう一つはNetscape Navigator/Communicator4.xに含まれるバグで,Java環境から,ローカル・ファイルを含む任意のURLにアクセスできてしまう。当面の対策は,CommunicatorのJava実行機能を無効にすることである(注:記事掲載後,バグを修正したCommunicator4.75英語版が公開された)。

 「Brown Orifice」バグは,セキュリティ専門家のDan Brumleve氏が発見して報告した。バグのデモンストレーションのためBrumleve氏が開発したJavaアプレット「Brown Orifice HTTPD」は,ユーザーのコンピュータ上でHTTPD(Webサーバー・ソフト)として動作し,コンピュータ上のファイルを他のコンピュータから読めるようにしてしまう。

 Netscapeによれば,このバグは,Netcape Communicatorの4.0から4.74,Windows版,Macintosh版,UNIX版に存在する。Netscape 6 Preview Release1および2にはこのバグはないという。また,バグの修正作業は進行中であるという。

 Sun Microsystemsによれば,Javaのコア・ライブラリのバグは,JDK,JRE,Java Plug-inのバージョン1.1.x以前(1.0.xも含む)に存在する。なお,Microsoft Internet Explorer(IE)の全バージョン,およびJava2 Standard Edition 1.2.1以降(Windows版),Java2 Standard Edition 1.2.2以降(Solaris版,Linux版)については,今回発見されたバグは含まれていないという。Sunでは,開発者に向けてバグ回避のためにJava2へ移行するよう勧めている。

 また,このバグが米国メディアで大きく報道されているのに便乗した格好で,米Computer Associates は,同社のセキュリティ製品「eTrust Content Inspection」がBrown Orifice対抗策として有効であるとの発表を行っている(ただし詳細は不明。「Brown Orifice HTTPDアプレット」をフィルタするだけだとすれば,同じバグを悪用した別のアプレットに対しては無効である)。

 今年に入ってから,Javaアプレットのセキュリティ機構に「穴」を開けてしまうバグがいくつも発見されている。これらのバグの共通点は,いずれもJDK1.1.x以前のJava環境の実装上のミスが原因であることだ。セキュリティ対策の観点から,Java2環境の普及が望まれる。セキュリティ・アーキテクチャを改善して実装上のミスの余地を少なくしているからである。


●Dan Brumleve氏のBrown Orifice警告ページ
http://www.brumleve.com/BrownOrifice/

●Netscpaeのセキュリティ・ページ
http://www.netscape.com/security/

●SunのJavaセキュリティ・ページ
http://java.sun.com/security/

●Computer Associatesのプレスリリース(同社製品がBrown Orifice対策として有効と主張)
http://www.ca.com/press/2000/08/virus_brown_orifce.htm

●関連記事:2000年に入ってから報告されたセキュリティ・バグ
・MacOS版IEのJavaにセキュリティ・ホール,大半のユーザーに影響
 --IEのJava機能は無効に!
(2000-5-18)
・IEの新セキュリティ・ホールを警告,対策はJavaとJavaScriptの無効化(2000-4-19)
・IEのJava機能はすぐ「無効」に!
 Java House MLがMicrosoft VMの新セキュリティ・ホールを警告
(2000-1-31)


付記:
JavaHouseメーリング・リストの高木浩光氏が,このセキュリティ・バグに関する考察と,テスト・アプレットを公開している。今回のバグに関しては,JavaHouseメーリング・リストでの下記の発言も参考にされたい。

[JavaHouse-Brewers:35275](高木氏によるバグの分析)
[JavaHouse-Brewers:35313](Brown Orifice HTTPDアプレット自体が危険と指摘)
[JavaHouse-Brewers:35314](バグの確認用アプレットを公開)
[JavaHouse-Brewers:35379](バグの深刻さを過小評価した記事への警告)


付記2:
JavaHouseメーリング・リストでは,今回発見されたバグによる危険性の調査を進めている。8月14日時点では,Netscape4.x以外にも,Java Plg-in 1.1.xと,MacOS版Internet ExplorerのうちMRJを使うものについては,Javaコア・ライブラリのバグ(Brown Orifice脆弱性の原因となる二つのバグのうちの一つ)の脆弱性が表面化する危険があることが明らかになった。

[JavaHouse-Brewers:35426](バグが影響するブラウザ環境の一覧表)
(2000年8月14日)

おわびと訂正:
8月11日公開のニュース記事の掲載後に,今回のバグに関する分析を進めているJavaHouseメーリング・リスト世話人の高木浩光氏より次の点のご指摘をいただきました。

(1)当初の記事では,Netscape側のバグと,Sun側のバグの説明が入れ替わっていた。
(2)脆弱性を持つCommunicatorのバージョンを「4.04以降」と記述していたが,「4.0以降」と改めた。

以上,おわびして訂正するとともに,ご指摘に感謝します。(2000年8月12日)