clear clear
Symantec.com logo Security Response
japan
グローバルサイト
製品とサービス
製品の購入
サポート
セキュリティ・レスポンス
ダウンロード
シマンテックについて
サーチ
フィードバック
grey


© 1995-2006 Symantec Corporation.
All rights reserved.
商標について
プライバシーポリシー

Category 1 JavaApp.Strange Brew

最終更新日: 1998年8月17日 00:00 (米国時間)

Strange Brewは、Javaアプレットとアプリケーションに初めて感染したコンピュータウイルスです。このウイルスは、シマンテックが開発したSeekerというウイルス自動検索エンジンによってインターネット上で発見されました。

種別: ウイルス

感染サイズ: 約3890バイト

threat assessment

被害状況

危険性評価グラフ

Low Low Low

被害状況:

ダメージ:

感染力:

感染力

technical details

Strange Brewは、ウイルス研究者の間では寄生型ウイルスと呼ばれているタイプのウイルスです。寄生型ウイルスとは、感染後もプログラムが正しく動作するような方法で、自分自身を感染対象のプログラムに付着させるウイルスを指します。Strange Brewウイルスの場合、Javaの.classファイルに自分自身を付着させます。Javaの.classファイルは、Java言語で記述されたアプレットやアプリケーションプログラムを構成する実行形式ファイルです。

Javaの.classファイルは、Windows 95やWindows NTで使用される標準アプリケーションの.EXEファイルと多くの点で似ていますが、Java技術に対応しているシステムであれば、事実上どのようなコンピュータ上でも使用することができます。言い換えると、このウイルスは十数種類のコンピュータ環境で自己複製を行う能力を備えています。従来のコンピュータウイルスは1種類か、多くても数種類のコンピュータ環境でしか繁殖することはできませんでした。たとえば、最近出現したW95.CIHウイルスが感染できるのは、Windows 95/98システムのみです。これとは対照的に、Strange Brewウイルスは、Windows 95、UNIXサーバ、CRAYスーパーコンピュータなど、Javaが動作可能なあらゆる環境下で全く同様に動作することができます。

Strange Brewウイルスは、JavaアプレットファイルとJavaアプリケーションファイルの両方に感染します。Javaアプレットは通常Web上からダウンロードして使用されるJavaプログラムで、Webブラウザ(Internet ExplorerやNetscape Navigator)上でのみ動作します。Javaアプリケーションはスタンドアロンのプログラムで、ブラウザがなくても実行することができます。

Strange Brewウイルスが他のファイルに感染することができるのは、感染したJavaアプリケーションが実行された場合のみです。また、感染したJavaアプレットの場合でも、ユーザがInternet ExplorerやNetscape Navigatorのような保護機能が整ったWebブラウザを使っていれば、ブラウザによるセキュリティチェックに引掛かって直ちに停止させられるため、感染することはできません。つまり、Webサーフィンするだけでこのウイルスに感染することはなく、普通にインターネットを利用しているユーザにとっては、このウイルスの脅威とは無縁だということになります。このウイルスは、感染したJavaアプリケーションが実行された場合は増殖することができますが、Javaアプリケーションを使用している企業やユーザは非常に少ないため、このウイルスに感染する危険は非常に低いと思われます。

Strange Brewは、寄生型ウイルス(前述参照)であることと同時に、ダイレクトアクション型のウイルスでもあります。つまり、このウイルスは、感染したアプリケーションから制御を奪うとすぐに他のファイルへの感染を試み、感染活動を終えると、制御を元のアプリケーションに返して自動的に終了します。このウイルスは、コンピュータのメモリに常駐することもなければ、上記以外の感染動作あるいは有害活動を行うこともありません。

このウイルスが他のアプリケーションに感染する際、感染したアプリケーションが起動されたときに常に制御を奪うとは限りません(ウイルスが制御を奪うかどうかは、感染したJavaアプリケーションがどのように使用されているかや、プログラムの構造により決まります)。しかし、ウイルスが制御を奪った場合、2段階に分かれた感染動作を実行します。第1段階として、このウイルスはカレントディレクトリを検索し、既に感染している.classファイルを探します。Strange Brewウイルスに感染したファイルが見つかると、感染したファイルの領域をメモリに読み込みます。この情報は後で他のファイルに感染する際に必要になるウイルスプログラムのロジックとデータの構成要素として使用されます。ウイルスは、その後この情報をメモリに読み込み、第2段階の感染処理(後述参照)を開始します。カレントディレクトリに感染したファイルが見つからなかった場合、ウイルスは感染処理を終了し、元のJavaアプリケーションに制御を返します。

このウイルスは、感染ファイルを検出し、その内容をメモリに読み込んだ後、新たな感染先を探し始めます。このウイルスは、ファイルサイズが101で割り切れる".class"ファイルは既に感染済みであると判断します。StrangeBrewに感染したファイルが全て101で割り切れるサイズになるのは、この理由によるものです。しかし、このことは、元々のファイルサイズが101で割り切れる未感染ファイルを見逃す原因にもなっています。ウイルスが未感染と思われる.classファイルを探し出すと、そのファイルの内部構造を調べ、感染に適しているかどうかを確認します。そのファイルが感染に適していなければ、ウイルスは、そのファイルのファイルサイズを101で割り切れる値に変更するために、そのファイルにバイトを挿入します。これにより、次回以降の感染活動時に、感染に適していないファイルを素早く除外できるようになります。

感染に適した.classファイルが見つかると、ウイルスは自分自身をそのファイル(ホストファイル)に挿入します。ウイルスに感染され、ウイルスの寄生先となったファイルは「ホストファイル」と呼ばれています。このウイルスは、ファイルに新しいセクション(新しいメソッド)を作成し、そのセクションに自分自身のプログラムロジックを書き込むことによって.classファイルに感染します。この新しいセクションは、ホストファイルに元々含まれているプログラムコードのセクションの前に挿入されます。ウイルスはその後、ホストプログラムを、新たに挿入したウイルスロジックに制御を渡すように改変します。このとき、ウイルスによりホストプログラムのエラー処理機能が変更されるため、感染したプログラムによっては正常には動作しなくなることがあります。しかし、ほとんどのJavaアプリケーションは正しく動作します。最後に、このウイルスはファイル内の幾つかのテーブルとフィールドを更新します。

このウイルスは、カレントディレクトリ内の感染に適した.classファイル全てに感染を試みた後、ホストアプリケーションに制御を戻します。感染したファイルのサイズは、3,890バイト程度増加します。また、感染したファイルのタイムスタンプを、このプロセスが実行されたときの日付と時刻に変更します。

この感染処理は設計の出来が悪く、ウイルスが意図通りに感染できなかったり、ウイルスがクラッシュするなどの大きなバグを抱えています。ウイルスが感染処理の実行時にクラッシュした場合、ホストとなったJavaアプリケーションが終了し、それ以後の感染処理は行なわれません。

Strange Brewウイルスには意図的な発病症状はなく、感染したり、(感染処理に失敗した結果)Java実行ファイルを損傷する可能性があること以外は、有害な活動は行いません。このウイルスは世間一般には出回っておらず、このウイルスによる感染被害に遭ったという報告は現時点では寄せられていないため、一般のエンドユーザや企業に対する脅威とはみなされていません。ただし、JavaやWWWの開発関係者の場合、開発中または使用中のJava".class"ファイルがこのウイルスに感染したり、感染により破損する可能性があるため、注意が必要です。

このウイルスに感染した場合、使用しているJavaアプリケーションの起動に時間がかかったり、そのアプリケーションが動作しなかったりするなどの徴候が見られます。また、感染したJavaアプレットを不注意にもダウンロードしてWWWブラウザ内で実行してしまった場合、次のメッセージが表示される可能性があります。

Netscape 4.05:
Applet <アプレット名> can't start: class got a security violation: method verification error

IE 4.0:
error: com.ms.lang. VerifyErrorEx: WVLayout.Strange_Brew_Virus: invalid constant value

recommendations

Symantec Security Response では、すべてのユーザと管理者の皆様に対し、基本的なオンライン・セキュリティ対策として日常的に次のことを実行することを奨励しています。

  • 不必要なサービスをすべて無効化するか、あるいは削除する。OS の多くは標準で、FTP クライアント、telnet、Web サーバーなどコンピュータの操作に必ずしも必要ではない付加的なサービスをインストールします。そのような付加的サービスは、攻撃の侵入経路として利用されることが多いため、無効化あるいは削除することによって、攻撃経路をその分少なくすることができ、パッチ適用時にも更新が必要なサービス数を減らすことができます。
  • 1つ、あるいは複数のネットワークサービスが複合型脅威の攻撃を受けた場合には、パッチを適用するまでの一時的な回避策として、攻撃を受けているサービスをオフにするか、そのサービスへのアクセスを遮断する。
  • 常に最新のパッチを適用しておく。特に、公開サービスをホストしていたり、HTTP、FTP、メール、DNS サービスなど、ファイアウォールを介してアクセス可能にしているコンピュータに対しては必ず最新パッチを適用しておくよう心がけてください。
  • パスワード・ポリシーの徹底。複雑なパスワードを設定しておけば、セキュリティが低下したコンピュータ上に保存しているパスワードファイルの解読を困難にすることができます。また、攻撃を受けた場合でも被害を防止あるいは最小限に抑えることができます。
  • メールサーバーを、ウイルスが感染拡大を試みる際によく使用するファイル拡張子(.vbs、.bat、.exe、.scr など)が付いた添付ファイルを含むメールをブロックあるいは削除するように設定しておく。
  • ネットワーク接続しているコンピュータが感染した場合は、他のコンピュータへの感染拡大を防止するために、そのコンピュータをすみやかにネットワークから切り離し、その後、被害を受けたコンピュータに対し被害状況の分析を行ない、信頼できるメディアを使って復旧を図る。
  • 従業員に対し、次のことを徹底させる。
    • 予期せぬメールが届いた場合には添付ファイルを絶対に開かない。
    • インターネットからダウンロードしたソフトウェアについては、必ずウイルススキャンを実行し、問題がないことが確認できるまでは絶対に起動しない。
    • 既知のセキュリティホールに対応するパッチが適用されていない Web ブラウザーを使用している場合は、安全でない Web サイトにアクセスするだけで感染する可能性があることを留意する。

removal instructions

感染の疑いがある場合には、LiveUpdateを実行するか、あるいはSymantec Security Response のホームページから最新のウイルス定義ファイルをダウンロードしてください。

  • LiveUpdateを使ってウイルス定義ファイルを更新する方法については、こちらをクリックしてください。
  • Symantec Security Response のホームページから手動でダウンロード、インストールするには、こちらをクリックしてください。