親クラス: VirWare
ウイルスおよびワームは、コンピュータ上またはコンピュータネットワーク上で自己複製する悪意のあるプログラムであり、ユーザーは認識しません。そのような悪意のあるプログラムの後続のコピーも自己複製することができます。 「所有者」(例:Backdoors)または自己複製が不可能な複数のコピーを作成するプログラムによって、ネットワーク経由で感染したり、リモートマシンに感染したりする悪質なプログラムは、ウイルスおよびワームのサブクラスには含まれません。プログラムがViruses and Wormsサブクラス内の別個の動作として分類されるかどうかを判断するために使用される主要な特性は、プログラムがどのように伝搬するか(すなわち、悪意のあるプログラムがローカルまたはネットワークリソースを介してどのように自身のコピーを広げるか)電子メール添付ファイルとして送信されたファイルとして、WebまたはFTPリソースへのリンク経由で、ICQまたはIRCメッセージで送信されたリンク経由で、P2Pファイル共有ネットワークなどを介して送信されます。これらは直接コンピュータのメモリに侵入し、ワームコードが有効になります。ワームは、リモートコンピュータに侵入して自身のコピーを開始するために、ソーシャルエンジニアリング(例えば、ユーザーが添付ファイルを開くことを示唆する電子メールメッセージ)、ネットワーク構成エラー(完全にアクセス可能なディスクへのコピーなど)を利用し、オペレーティングシステムとアプリケーションのセキュリティの抜け穴ウイルスは、コンピュータを感染させる方法に従って分割することができます。ファイルウイルス - ブートセクタウイルス - マクロウイルススクリプトウイルス - このサブクラス内のプログラムは、追加のトロイの木馬機能を持つことができます。また、ネットワークを介してコピーを広めるために、多くのワームが複数の方法を使用していることにも注意してください。これらのタイプのワームを分類するには、検出されたオブジェクトを複数の機能で分類するためのルールを使用する必要があります。クラス: Virus
ウィルスは、ローカルマシンのリソース上で複製します。ワームとは異なり、ウイルスはネットワークサービスを使用して他のコンピュータに伝播したり侵入したりしません。感染したオブジェクトが何らかの理由でウイルス機能に関係なく他のコンピュータで有効になっている場合にのみ、ウイルスのコピーがリモートコンピュータに届きます。たとえば、アクセス可能なディスクに感染すると、ウイルスはネットワークリソースにあるファイルに侵入し、ウイルスは自身をリムーバブルストレージデバイスにコピーしたり、リムーバブルデバイス上のファイルに感染させたりします。ユーザーは感染した添付ファイル付きの電子メールを送信します。プラットフォーム: DOS
No platform description説明
技術的な詳細
これは記憶に寄生する寄生虫多型ウイルスである。 INT 1、21hをフックし、EXEの最後とCOMファイルの先頭に自身を書き込みます。
このウイルスは、複雑な方法でオンザフライ暗号化を行います。ウイルスコードが実行されると、唯一の命令が暗号化されていない状態で提示されます。他のすべてのウイルスコードは暗号化されます。このウイルスは、INT 1トレースモードでトリックを使用することでそれを行います。ウイルスコードが制御を受け取ると、INT 1がフックされ、ウイルス命令の実行後に(いくつかの特別なオペコードを除いて - 「Intel 80x86 User Guide」を参照)、INT 1が呼び出されます。ウイルスはこの呼び出しをフックし、現在の命令の下のコードを解読し、上記のコードを暗号化します。
prev命令 - 暗号化現在の命令 - クリーン次の命令 - 暗号化"現在の命令"を実行した後、ウィルスはINT 1フックで制御し、 "現在の命令"を暗号化し、 "次の命令"を解読します。その結果、いつでもすべてのウイルスコードが暗号化されるか、または1つの命令だけがクリーンで提示されます。さらに、ウイルスは、前/次の命令のコードを正確に暗号化/復号化するのではなく、現在の命令のアドレスからのいくつかのオフセットでいくつかのバイト/ワードを暗号化/復号化する。その結果、ウィルスの命令フローは、スポットの真ん中に「きれいな」命令、残りのスポットで部分的に暗号化されたコード、およびスポットの外で完全に暗号化されたコードで移動する「スポット」のように見えます。
このように暗号化できないコードは、INT 1ハンドラ(エン/デクリプタ)、感染ファイルの開始コード、およびウイルスTSRコピーのINT 21hハンドラです。ファイルの開始コードとINT 21hハンドラフックINT 1は、制御を受け取るとトレースモードに切り替え、メインルーチンに制御を渡します。 - ファイルのインストールルーチンとウイルスTSRコピーのメインINT 21hハンドラのコード。
INT 1フックルーチンとINT 1ハンドラ自体は暗号化されておらず、それらは単なる多態性です - ウイルスは非常に強力な多態性エンジンを使用して、INT 1フアーカーのコードを感染ファイルのエントリポイントで生成します。 1および21hハンドラ。
感染ファイル内のウイルスコード:
エントリ:+ ------------- +| INT 1フッカー| - 多型| - - - - - - - || INT 1ハンドラ| - 多型| - - - - - - - ||主なウイルス| - INT 1によって暗号化される|コード:TSR ||インストール担当者、||その他|+ ------------- +メモリ内のウイルスコード:
INT 21h + ------------- +エントリー:| INT 1 hooker | - 多型| - - - - - - - || INT 1ハンドラ| - 多型| - - - - - - - ||主なウイルス| - INT 1によって暗号化される|コード:INT 21h ||ハンドラ、||その他|+ ------------- +その結果、ウイルスコード(感染ファイルの開始アドレス、INT 1ハンドラおよびINT 21hハンドラの開始コード)へのすべての「エントリ」は多型であり、主なウイルスコードは暗号化されています。これは、ウイルス対策研究者が検出を精緻化するそのような種類のウイルスに対する手続き。
多態性エンジン
通常の多態性エンジンと "DarkParanoid"のエンジンの違いは、このウイルスには多型コードに復号化ループがないことです。これはINT 1をフックしてメインコードのトレースを開始するだけです。このコードを生成する際に、ウイルスはランダムにレジスタ、コマンド、データアクセスモードなどを選択します。オンザフライ暗号化/復号化ルーチンを含むINT 1ハンドラと同様です。このファイルは別々のファイルでも異なっています.ADD、SUB、XOR、NEG、NOT、ROR、ROLのほか、バイトとワードアクセスなど、10種類以上の暗号化機能がセットからランダムに選択されています。また、ランダムなレジスタが使用され、INT 1ハンドラのオフセットがいくつかの制限内でランダムに選択されます。
インストールとINT 21hハンドラ
「DarkParanoid」ウイルスはメモリ常駐型であるため、感染ファイルが実行されるとウイルスはシステムメモリに自身をインストールします。これを実行するためにINT 1をフックしてオンザフライ暗号化/復号化ルーチンを起動し、必要な量の空きメモリ(約7.5K)があれば、従来のDOSメモリまたはUpper Memory Blockにシステムメモリのブロックを割り当てます。その後、そのコードがそこにコピーされ、INT 21hがフックされ、制御がホストプログラムに返されます。メモリ常駐型のインストール中に、ウイルスはその多形性エンジンを実行して、ファイルを感染させる際にそれらを使用する解読ルーチンを生成します。ウイルスはこのエンジンをもう使用しません。その結果、インストールされたウイルスは、次の再起動と再インストールまで同じポリモーフィックコードをファイルにドロップします。これはユーザーとウイルス研究者をだますかもしれません。ウイルスは、これが単なる暗号化されたウイルスであることを確かめようとしますが、多形ではないことを確かめます。
INT 21hウイルスハンドラは、FileOpen / Createコール(AH / AX = 3Ch、5Bh 6C00h)、FileCloseコール(AH = 3Eh)、Get Allocation Strategy(AX = 5800h)を傍受します。
最後の機能(Get Allocation Strategy)は、「Are You Here?」として使用されます。コール。この呼び出しは、常駐メモリのインストール中にウイルスによって実行されます。このコールの前に、ウイルスは現在の年番号と現在の月と日の番号(AH = 2Ah、CX = CX + DX、AX = 5800hのINT 21hコールで現在の日付を取得します)をCXレジスタに入れます。
メモリ常駐ウイルスコピーはそれを傍受し、現在の日付と年を取得し、その追加をCXレジスタと比較します。それらが等しい場合、ウイルスTSRコピーはアクティブなウイルスコピーに制御を戻しませんが、それを単独でホストプログラムに渡します。それは非常に有効なアンチデバッグトリックだと思われます - もしウイルスがすでにメモリ常駐しているなら、GetAllocationStrategyのような通常のコールはデバッガに返されません。
ファイルが開かれると、ウイルスはその名前の拡張子を "COM"と "EXE"と比較し、これらの拡張子の場合、ファイルが閉じられるときにファイルのハンドルを保存して感染させます。その結果、実行ファイルは、ウイルス対策プログラムによってウイルススキャンされたか、バックアップに保存されたか、またはコピーされたときなど、感染したときにのみ感染します。
ファイルを感染させる前に、ウイルスはファイル名をチェックし、いくつかのウイルス対策プログラムやユーティリティに感染することはありません。AV、SC、CL、GU、NO、FV、TO、TB(AVP 、AVG、SCAN、CLEAN、GUARD、TBAVなど)
このウイルスは、EXEファイルの最後にコードを書き込み、EXEファイルのヘッダーに必要なフィールドを変更します。 COMファイルの場合、ウイルスはそのコードをファイルの先頭に書き出し、元のファイルをファイルの最後まで保存します。
ウイルスに感染すると、ファイルのサイズが可変数で増加します。システムメモリにランダムに選択されたアドレスからランダムに選択された番号(最大1001バイト)だけでなく、実際のウイルスコード(暗号化された)5297バイトを書き込みます。このウイルスは、EXEファイルの長さを感染前の段落(16バイト)に合わせ、60Kを超える長さのCOMファイルには感染しません。 COMとEXEファイルを分離するために、ウイルスはファイルヘッダ(MZ / ZM EXEスタンプ)をチェックします。
感染したファイルと感染していないファイルを分離するために、ウイルスはファイルの時刻と日付のスタンプを使って標準トリックを使います。ファイルを感染させた後、ウイルスはタイムスタンプを2秒に設定し、感染前にこの値をチェックします。
トリガルーチン
トリガールーチンはランダムカウンタに応じてウイルスによって実行されます - 各ファイルにウイルスを感染させ、ウイルスの確率1/4000を表示すると "DaRK PARaNOiD"というテキストが画面中央に表示され、その後PCスピーカーでノイズが発生し、VGAカード機能。ウイルスには、その多形エンジンのコードの中にテキストも含まれています。
永遠の暗号のエンジン
も参照してください
お住まいの地域に広がる脆弱性の統計をご覧ください statistics.securelist.com