新種の「Gumblar.x」PHPウイルスがはやっています

10月9日に発生したようなのですが、

新種のPHPのウイルス 「Gumblar.x」「JSRedir-R」(通称、GENOウイルス)の変種が
はやっているようです。
管理している、Xoopsのサーバーが2台、PHPを使っているサーバーが1台感染しました。

このウイルスは、PHPを使っているサーバーに感染するようです。
PHP スクリプトを使っているCGIやSSIはもちろんですが、
Xoops
WordPress
Nucleus
PukiWiki
などもやられる(やられている)可能性があります。


どうも、このウイルスは単体ではなく、3つのウイルスの複合体でひとつの
システムを作っている「ウイルスシステム」というべきものです。
さらに、3つのウイルスは連携して動き、感染したサーバーとクライアント
を網の目のように組み合わせた「ウイルスネットワーク」を構成しています。

現在わかっている全体像について
  /posts/346.html
をお読みください。


自分のサーバー、あるいは、今閲覧中のサーバー(ホームページ)が、
感染しているかどうかを調べる一番簡単な方法は、

  ・ページのソースファイルを見る
  ・<body>タグの直前に、
      <script src=http: ・・・ .php ></script>
   があれば、×
   なければ、大丈夫

です。サーバー管理者であれば、これ以外にも、

  ・imagesフォルダ(どの階層にあってもよい)の中に、
     gifimg.php
   がある
  ・html, htm ファイル, js, php, txt ファイルのタイムスタンプが妙に新しい
  ・FTPサーバーのログが参照できるなら、
   見知らぬIPから、見知らぬ時間にログインがある
  ・WEBサーバーのログが参照できるなら、
   phpファイルに、見知らぬURLからのRefererがある
  ・妙にアクセス数・ページビュー数が増えている

あたりがあれば、感染しているとお考え下さい。


以下の情報は、サーバー管理者が、このウイルスに感染したサーバーを復旧する
ために必要な情報です。

以下の方策で、どうやら問題が収まりました。

FTPのパスワード変更は、必須です。 
FTPのパスワードが漏れたのが、出発点だからです。

なお、以下の対策を実施する前に、作業マシンとネットワークに
つながっているマシンが、ウイルス感染していないかどうか確認し、
安全を確保して開始してください。
(参考) http://www29.atwiki.jp/geno/pages/14.html

Gumblarに感染したクライアントPCは、ネットワークを監視して、
FTPのパスワードを盗みます。



これらによれば、サーバー側では

 ・php ファイルの冒頭に、Base64エンコードされたコードが差し込まれる
 ・images というフォルダ内に gifimg.php というファイルが新たにできて、それも感染している
 ・html, htm ファイルの<body>タグの直前に、外部サーバーのPHPファイルを参照する <script src=http: ・・・ .php ></script>
  タグが埋め込まれる
 ・jsファイルの最後に?b>document.write('<script src=http: ・・・ .php ></script>');
  スクリプトが埋め込まれる

という動作をし、結果として

 ・PHPで稼動しているサーバーがダウンする
 ・そのサーバーにある、html htm php js ファイルが改変される

また、そのサーバーをブラウズ・閲覧したWindowsマシン(クライアントPC)の方では

 ・Flash, Acrobat, Windowsの脆弱性をつかれて、ウイルス感染する
  (最新のパッチをあてたFlash, Acrobat, Windowsでは感染しません)
 ・ウイルス感染したマシンでは、ネットワークのパケットを監視して、
  FTPのアカウントとパスワードを盗み取り、親玉サーバーに送信する

という現象がおきるようです。


逆にいえば、

 ・身の回りにこのウイルスに感染したWindowsがある
 ・感染したWindowsにネットワークを監視され、FTPのパスワードが盗まれる
 ・管理しているサーバーに、このパスワードを使って侵入される
 ・phpファイルの冒頭が <?php eval(base64 ・・・と変更される

次に、このサーバーにアクセスがあると、

 ・上記のphpファイルが作動して、gifimg.php の作成、そのサーバー内の
  html, htm, php, jsファイルの書き換えがおこる
 ・感染サーバーの出来あがり
  このサーバーにアクセスしたWindowsマシン(クライアントPC)に感染し
  「逆に言えば」のところに戻る

ということです。サーバーを管理している人のマシンから直接 FTPのパスワード
がもれなくても、社内に感染した人がいれば、そこから、管理している
サーバーのパスワードがもれて、サーバーを乗っ取られる可能性がある、
ということなのです。


サーバーから感染ファイルを除去する方法は、

 1.サーバーのコンテンツをすべてローカルに退避する
   サーバーのコンテンツはすべて削除する
 2.ローカルのファイルに対して次の文字列を検索
   -eval(base64
   -<script src=http
   -document.write('<script
   http://kanariia.com/blog/archives/612 を参考にして
   ウイルスのコード部分を削除(空白で置換)
   gifimg.php というファイルをすべて削除
 3.FTPのパスワード変更
 4.サーバーに修正済みのファイルをアップする

です。

2は、そのサーバー内にある、ファイル(.txt, .php, .js, .html, .htm)を

 ・eval(base64
 ・<script src=http:
 ?b>document.write('<script

という記述(テキスト検索で発見する)をもとに検索して、該当箇所を消します。
該当箇所は、 http://kanariia.com/blog/archives/612 を参考にして下さい。

テキストの検索・置換には、
  Devas
    http://www.vector.co.jp/soft/win95/util/se162621.html
  ただのテキスト検索・置換ツールです
  対象ファイルの条件を、*.txt *.htm *.html *.php *.js に変更
が便利です。


私は、さらに、サーバー内で、html, htm, php, js, gif, jpeg, jpg, png の拡張子のファイル
について、パーミッションを「644」から「404」に変更することにしました。

また、FTPサーバーのパスワードを変更いたしました。


サーバーを預かっていただいている、(株)ジオベック様には、大変ご迷惑をかけ、
また、迅速に対処いただき、感謝申し上げます。


<追記 やられちゃったサーバー群1編 > (09/10/27)


上記したのは、
  http://ilion.blog47.fc2.com/blog-entry-154.html
このサーバーで言う「やられちゃったサーバー群2」の対処法です。

「やられちゃったサーバー群1」になっていないかどうかを調べるには、
throw new TypeError(24) が、ないかを確認するのがよいと思われます。

<追記2 クライアントPC編 > (09/10/27)


サーバーではなく、自分の手元のマシンがウイルスにやられていないか
どうかを確かめる方法
  http://www29.atwiki.jp/geno/pages/14.html
  
このあと手元のマシンがウイルスに感染しないようにソフトのセキュリ
ティホールをふさぐ方法(ツール)
サーバーは英語ですが、ソフトは日本語対応しているので大丈夫。
  http://secunia.com/vulnerability_scanning/personal/