一瞬で復活したりindex.phpやhtaccessファイルのパーミッション(書き込み権限)を変更するワードプレスのマルウェアを解析してみます。

プロセス常駐型マルウェアの症状

このタイプのマルウェアは、サイトに訪ねたユーザーを別の不正なサイトに飛ばしたり、偽のページをGoogle検索に引っ掛けたりする症状を引き起こします。

また特徴として、index.php,htaccess,wp-config.phpなどを改ざんして、サイトの管理画面の機能にアクセスできなくしたりします。また、マルウェアファイルや改ざんを駆除するとすぐに復活したり、フォルダやファイルの書き込み権限を変えて駆除できないような処理を一瞬で(自動処理)で行います。

サーバーのプロセス(メモリ)に常駐して一瞬で再感染するマルウェアの技術とは?

このタイプのマルウェアを当社で解析しましたところ、下記のような流れでサーバーのプロセスに常駐していることが分かりました。

1 さまざまなファイルの改善を行いサイトに不正な動作を実行させるマルウェアの本体のコードを$_POST関数等で外部から引っ張ってきて実行する

2 自分自身のファイルをunlink($_SERVER[‘SCRIPT_FILENAME’]) 等のコードで消す

3 自分自身のファイルを消しても、すでにコードはメモリに読み込まれているので実行が継続される。

4 次に無限ループをサーバーのプロセスに書き込む

do{
//無限ループのコード
}while(1)

5 上記無限ループのコードにサイトの改ざんや、パーミッションの変更等のサイト運営者側の駆除作業を監視し、改ざんを再度実行するコードが仕込まれていて、サイト運営者がマルウェアを駆除するとすぐに1のマルウェアが再感染する。

つまり、このマルウェアの本体のファイルはサーバーの中に存在せず、サーバーのプロセスのメモリの中の無限ループにのみ存在する形になります。

サーバーのプロセス常駐型マルウェアを駆除するには?

このマルウェアはファイルとしては存在しませんので、以下の2つの方法でしか駆除(停止)することができません。

1 サーバー(もしくはPHP)の再起動
2 PHPの無限ループをサーバーのコマンドで停止する

コマンドの例

php system("kill プロセスID");

プロセスを停止出来たら、その他の改ざんやファイルとして存在するマルウェアは、【無料】ワードプレス:マルウェアスキャン&セキュリティープラグイン [マルウェア・ウィルス検出と駆除] 等のプラグインで検出駆除することが可能です。

しかし、一般的な共用サーバーでは、サーバーの再起動は許可されておらず、またコマンドをサーバー上で実行するのは、PHPの特殊なプログラムを仲介する必要がある場合が多いです。

WPドクターでは、このようなサーバーのプロセス常駐型のマルウェアを停止して、index.phpやhtaccessの改ざんを駆除する特殊な駆除プログラムを開発し、御社サイトのマルウェアを確実に駆除いたします。

お気軽にご依頼・ご相談お送りください。

WordPress 直ぐに復活するプロセス常駐しているマルウェア駆除のご依頼・ご相談はWPドクターまでお気軽お送りください