本サービスには一部、Googleの支援により翻訳されたコンテンツが含まれます。Googleは、明示または黙示を問わず、市場性、特定目的への適合性、ならびに非侵害の黙示的保証を含む、翻訳の精度、信頼性、正確性に関連するあらゆる点において保証しません。

Kaspersky Labの本Webサイトは、便宜上、Google Translateを搭載した翻訳ソフトウェアを利用して翻訳されています。正確な翻訳となるよう合理的な努力を払ってはおりますが、自動翻訳の正確性は完全ではなく、翻訳者(人間)による翻訳に代わるものとして意図されているものでもありません。翻訳はKaspersky Labの本Webサイトをご利用の皆様の利便性を図るためのものであり、「翻訳結果をそのまま」ご提供するものです。英語からその他言語への翻訳における精度、信頼性、正確性に関しては、明示または黙示を問わず、いかなる保証もなされません。翻訳ソフトウェアのため、コンテンツの一部(画像、動画、フラッシュ等)は正しく翻訳されない場合があります。

Virus.Java.BeanHive

クラス Virus
プラットフォーム Java
説明

技術的な詳細

このウイルスに使用されている技術には、いくつかの利点があります。このマルチコンポーネントの感染方法は、ウイルスが感染ファイル内のコードを隠すことを可能にします。ファイルの長さはわずかに増加し、簡単に見た後に挿入されたウイルスコードは無害に見えます。

また、startter-mainの組み合わせにより、ウイルス作成者は、サーバー上のウイルスのメインコードを置き換えるだけで、ウイルスを新しいバージョンで「アップグレード」することができます。

非常に限られた条件下でのみウイルスが複製できることに注意する必要があります。一般的なWebブラウザの下でJavaアプレットとして実行されているシステムを感染させることは絶対にできません。標準のセキュリティ保護は、ディスクファイルへのアクセスやリモートJavaファイルのダウンロードを中止します。

ウイルスは、Javaマシンを使用して、Javaアプリケーションとしてディスクファイルとして実行されるだけで拡散することができます。

技術的な詳細

ウィルススターターは、約40行の短いJavaプログラムです。制御を受けると、リモートWebサーバーに接続し、そこに保存されているメインウイルスコードをBeanHive.classファイルにダウンロードし、サブルーチンとして実行します。

主要なウイルスコードも6つの部分に分けられ、6つの異なるJavaファイルに格納されます。これらのファイルはWebサーバーからダウンロードされ、必要な場合に実行されます。


BeanHive.class:ディレクトリツリー内のファイルを検索する
+ — e89a763c.class:ファイル形式の解析
| — a98b34f2.class:ファイルアクセス関数
| — be93a29f.class:感染ファイルの準備(パート1)
| — c8f67b45.class:感染ファイルの準備(パート2)
+ — dc98e742.class:ウィルススターターを犠牲者ファイルに挿入する

このウイルスに感染すると、内部Java形式が解析され、スターターのコードが "loadClass"サブルーチンとしてファイルに書き込まれ、ファイルサブルーチンのコードにloadClass( "BeanHive")という呼び出しが追加されます。渡されたパラメータ( "BeanHive")は、メインウイルスコードを持つ(Webサーバー上の)リモートファイルの名前を指します。


オリジナルへのリンク