BACK





Code Red ?U 2001/08/15時点



・概要

8月1日よりCodeRedワームの活動が再開。それに加え、新種の CodeRed?Uの発見が報告される。
Code Redは、ワームに分類される不正なプログラムでWebサーバーで、Internet Information Server および
Internet Information Services (IIS) の 脆弱性(バッファオーバーフロー)を利用して不正な活動を行なう。



・影響を受けるシステム

Windows NT/2000のIIS 4.0/5.0
ただし、IISにMS01-033のパッチをあてていているか、.idq, idaへのマッピングを外しているものは影響を受けません。
詳細、修正パッチについてはMicroSoftのサイトを参照。
http://www.microsoft.com/japan/technet/security/codealrt.asp


・感染症状について

いままでのCodeRedとは全く性質が異なり、感染する事により次の様な症状を起こします。
また、リモートからサーバーをコントロールできるようにされ、いままでのV1,2のようにリブートしても
単純には取り除けない為、復旧の為には直ちにネットワークから切り離し、フォーマット、再インストール、
を行い最新のパッチをあてなければならない。
また、このワームに感染すると、インターネットやLAN上にある他のIIS を探し出し次々と伝染します。
そのため、Code RedワームはWindows95,98,Meに対しては影響を与えません。
ログに次のような記録が残っていれば、アタックを受けています。

GET /default.ida?XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXX%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090
%u6858%ucbd3%u7801%u9090%u9090%u8190%u00c3%u0003%u8b00%u531b%u53ff%u0078%u0000%u00=a

GET /default.ida NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNN%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u6858
%ucbd3%u7801%u9090%u9090%u8190%u00c3%u0003%u8b00%u531b%u53ff%u0078%u0000%u00=a

ログファイルの記録方法によっては、以下のように残る場合もあります。

GET /default.ida

GET /default.ida

上記以外にいても、拡張子ida およびidq へのアクセスはCodeRed、
又は同様のワーム等による攻撃を受けている可能性があります。
また、アタックを受けて感染するかどうかは、OSとその構成、設定によります。
ログに残ってないから感染していないとはいえません。
以下に感染経過状況について説明します。


・バックドアのインストール

CodeRed?Uは、システムディレクトリにあるcmd.exeを、root.exeというファイル名で、CとDドライブの

\inetpub\scripts\

\Program Files\Common Files\System\Msadc\

にコピーします。Dドライブが無い場合は、Dへのコピーは失敗します。
このroot.exe(cmd.exe)は、サーバー上でリモートからコマンドを実行するために使われます。
いわゆるバックドアってやつです。


・トロジャンのインストール

CodeRed?Uは、ドライブCとDのルートディレクトリに、explorer.exeというファイルを生成します。
Dドライブが無い場合は、Dへの生成は失敗します。
トロジャン(explorer.exe)は保護されたシステムファイルとなっており、通常では表示されません。

生成したファイルに、CodeRed?Uのバイナリーコード部分にあるトロジャンコードをコピーします。
トロジャン、explorer.exeができます。
このトロジャン(explorer.exe)は、次にシステムにログインしたときに起動します。
トロジャンexplorer.exeはその実行に当って、内部から本物のExplorer.exeを呼び出します。

起動したトロジャン(explorer.exe)は、レジストリの変更や仮想ディレクリの作成を行います。
ログインしたアカウントが管理者権限(Administrator)を持っていなければ失敗します。
システムにSP2かMS00-052のパッチが当っていれば、トロジャン(explorer.exe)は起動せず、
本物のExplorer.exeが動作します。したがってレジストリの変更や仮想ディレクリの作成は行われません。

よってトロジャンの起動条件としては以下のものがあげられます。



・レジストリの変更

トロジャン(explorer.exe)が起動すると、次のレジストリを変更します。

HKLM\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon

のキーSFCDisableに、値 0xFFFFFF9D をセットします。
これはWindowsのシステムファイルプロテクション機能(SFP)を無効にする設定です。
このため、システム上重要なファイルの変更を防止しているSFPの機能が無効になり、
重要なシステムファイルの変更が可能になります。これは以降の侵入でシステムファイルを変更するための下準備です。

さらにトロジャン(explorer.exe)は、次のレジストリを変更します。

SYSTEM\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots\scripts
SYSTEM\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots\msadc

このレジストリに 値 ,,217を設定します。これによって、scriptsとmsadcディレクトリが、
Read/Write/Execute(読み書き実行)可能になります。
つまり誰でも何でもできてしまう状態になってしまうのです。
scriptsやmsadcは先ほどのバックドア(root.exe)をコピーしたディレクトリです。
これでリモートからroot.exeを使って読み書き実行が可能になります。


・仮想ディレクトリの作成

次にトロジャン(explorer.exe)は、CとDという、2つの仮想ディレクトリを作成します。

SYSTEM\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots\c
SYSTEM\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots\d

この2つの仮想ディレクトリにそれぞれ、c:\,,217、d:\,,217という値を設定します。
これによりドライブCとDが、それぞれ /c、/dという仮想ディレクトリにマッピングされます。
また、これらの仮想ディレクトリが読み書き実行可能になります。

以後は、この仮想ディレクトリを使ってC,Dドライブにアクセスができるようになります。
これは、scriptsやmsadcのバックドア(root.exe)が発見、削除されて使えなくなったときにでも、
/c、/dの仮想ディレクトリを経由してコマンドを起動できるようにするための予備のバックドアです。

以上のことを行うと、トロジャン(explorer.exe)はスリープしますが、10分ごとに起き出し、
これらレジストリの変更を監視して、削除、変更されていると、再度設定しなおします。
その為に、scriptsやmsadcのroot.exeを削除しても一度レジストリが書き換えられば、
それを修正しない限り、やはりバックドアは開いたままになっています。
また、仮想ディレクトリを削除しても、最大10分後か、次にログオンしたとき起動するトロジャン(explorer.exe)
がレジストリを書き換え、仮想ディレクトリを作成します。



・他のホストへの感染活動

CodeRed?Uは感染すると、他のホストへの感染活動を開始します。

まず感染活動用のスレッドを300個生成します。
このとき、OSが中国版のときは600個のスレッドを生成します。

それぞれのスレッドは24時間(中国版は48時間)の間感染活動を行います。
感染活動を終えると、システムをリブートし、CodeRed?Uはメモリー上から消え、
バックドアとトロジャンだけが残ります。

CodeRed?Uは感染させる他のホストのアドレスをランダムに生成しますが、
一様にランダムではなく、自分のアドレスに依存して次のような割合でアドレスを生成します。
例えば、自分のアドレスが、210.220.x.xx.xxxの場合。

まったくランダムなもの *.*.*.* 12.5%
Class Bが同じもの 210.220.*.* 37.5%
Class Aが同じもの 210.*.*.* 50%

このため、より近くのサーバーからアタックを受けることになります。
127.*.*.*、244.*.*.*、および最後が0と255のアドレスは生成しません。
また自分自身のアドレスは生成しません。

感染活動は、2001年9月30日までです。それ以後は感染活動を行いません。
感染用スレッドは、最初ターゲットIPのポート80に対して、通常の3wayハンドシェイクで接続を試みます。
接続できると、ワーム(CodeRed II)のコードをアップロードします。ワームコードは、約3.5Kバイトです。
コードをアップロードすると、感染用スレッドは次のターゲットを探します。

感染させられたほうでは、ワームコードの実行を開始しますが、
最初に自分自身がすでに感染しているかどうかをチェックします。
もしすでに感染していればスリープします。そのためCodeRed?Uの動作中に多重感染することはありません。
ただし、再起動されれば、CodeRed?Uがメモリー中から消えますので、再感染します。

CodeRed?Uは、ターゲットへの接続に非ブロッキングモードのソケットを使っています。
非ブロッキングモードを使うと、接続の完了を待たずに次の接続に移ることができるため感染速度が速くなっています。


・攻撃パケットによる被害

現在、世界中ではCodeRed、CodeRed?Uに感染したホストから流れる攻撃パケットにより、
ネットワークのトラフィック増大が起き、事実上ネットワークが使用不可になっているところが多数存在する。
また、CPU、メモリに高負荷がかかりルーターが不安定になり、バッファオーバーフローを起こしたりしている。
日本の場合は学術系ネットワークで深刻な障害が続いている。


back




SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送