WordPressにてサイトを運営している会社様から「サイトの管理画面からログインができない」とのご連絡をいただきました。早急に確認したところ、多数のフォルダ、ファイルの日時に更新があった様子が見られました。複数のファイルに不信なプログラムが見つかり、マルウェアに感染が確定、状況や作業についてまとめておきます。
【この記事でお伝えしたいこと】
ご自身のサイトに異変を感じて、どのような状況なのかお調べしている方を対象に記事作成を行っています。もし同じ状況でしたら、方法さえ正しく対処すれば復旧が可能です。一刻を争うものではありませんが、このケースの場合は発生から2日後には対応完了となりました。是非とも「慌てずに」ご対応できるよう、ご参考になれば幸いです。
サイトやサーバーの状況
・公開しているサイトの表示には問題はなく通常どおり。乗っ取りサイト作成やリダイレクト等はされていない。
・WordPressのログイン画面のCSSのリンクが外れて、レイアウト崩れが起きていた。
・ログインユーザー名とパスワードを入力してもログインができない。ログインパスワードが変更されていた。
・サーバーにある多数のファイルの更新日時が同じタイミングで更新されていた。
・.htaccesやindex.phpファイルに不正プログラムを確認。マルウェアも存在していた。
状況の詳細
WordPressのログイン画面を確認してみました。
「昨日は問題なくログインできていた」というログイン画面。CSSのリンクが外れ、さらにログインができない状態に。
FTPにてサーバーにアップロードしているファイルを確認してみました。
更新日時が同じことから、一瞬でフォルダ内に手が加わったことがわかります。トップの階層にはマルウェアの「wp-sid.php」もありました。
「.htaccess」ファイルを確認してみました。
上の矢印の記述は「py」から「php」も含め「suspected」 までの拡張子を持つファイルへのアクセスを制限するといった記述であり、このことによりphpで終わるページ全てがアクセス不能となります。
その下の矢印の記述は、マルウェアの本体もしくは、マルウェアが含まれるファイルで、このファイルの多くには、マルウェアが削除された場合にマルウェアを復元する機能や、さらなる改ざんを可能とするようなバックドアが含まれています。
「index.php」ファイルを開いて確認してみました。
Base64コードでエンコードされたプログラムが書き込まれていました。
行った作業
・再度の侵入を防ぐ為、データーベース経由でWordPressのログインユーザー名とパスワードを変更。
・FTPログインパスワード変更。
・ご依頼をいただいた会社内PCのセキュリティソフトでのウイルス、他チェックを依頼。
・バックアップの有無を確認。バックアップ有り。
・公開サイトのアクセスを一時停止。
・.htaccessやindex.phpファイル、マルウェア等を除去。他のフォルダを削除。
・最新のバージョンの WordPress、プラグイン、テーマなどをアップロード。
・新規でアップロードできない一部のファイルを十分に確認してアップ。WordPress各箇所が以前同様との確認をして復旧完了。
以上が駆除作業の大まかな流れです。実際の工程は専門的な知識が必要になり、かなり困難な部類になります。例えば不審な.htaccessやindex.phpファイルは、正常なものと差し替えると、自動で感知、すぐに不正ファイルに書き換えられるようになっています。この自動書き換えの不正プログラム・ファイルは他のフォルダにも多数アップロードされていました。
まとめ
このような状況になると、とても不安になるかと思います。もし、同じ状況になってしまってもバックアップがあれば、ほぼ以前の状態に戻すことができます。バックアップがない場合でも、データーベースが無事であれば投稿記事のテキスト部分も戻すことができるので、落ち着いて対応ができるよう、ご参考になれば幸いです。もし対応が難しいようであれば、専門の方にご依頼することをおすすめ致します。