今回は、クライアント様側で管理されているWordPressサイトにて、不正アクセス被害が発生したため、復旧対応を行った際の備忘録です。
不正ファイルの削除後、サイトの表示や管理画面に不具合が出ていたため、まずはXserver側で案内されていた復旧機能を試してみました。
結果として、WordPressリカバリー自体は有効でしたが、それだけでは元通りにならない部分もありました。
特に今回のケースでは、テーマやプラグインの一部ファイルが削除されていたため、利用中だったテーマ・プラグインを把握して再インストールする必要がありました。
同じような状況になったときの備忘録としてまとめておきます。
全体の流れ
今回の流れは大きく分けると以下のような形でした。
- 不正アクセスの連絡を受ける
- 不正ファイルを削除する
- WordPressリカバリーを試す
- 足りないテーマ・プラグインを再インストールする
- 動作確認を行う
最初は「リカバリーを実行すれば元に戻るのでは」と考えていましたが、実際にはそこまで単純ではありませんでした。
WordPressリカバリーを試した理由
Xserverの案内に、WordPressリカバリー機能で復旧できる場合があると記載がありました。
https://www.xserver.ne.jp/manual/man_server_wprecovery.php
不正ファイル削除後は、WordPressの構成ファイルが不足することがあるため、まずはこの機能で正常な状態に戻せるか確認する流れになります。
管理画面から操作できるため、比較的試しやすいのも利点でした。
実際にやったこと
サーバーパネルからWordPressリカバリーを実行
Xserverのサーバーパネルにログインし、対象のWordPressに対してリカバリーを実行しました。
操作自体はそこまで難しくなく、画面に沿って進めれば実行できます。
実行後の状態を確認
リカバリー後、サイト表示や管理画面の状態を確認しました。
この時点で、WordPress本体まわりはある程度戻ったように見えたのですが、実際には表示崩れや機能不足が残っていました。
なぜ完全に直らなかったのか
今回の原因は、テーマやプラグインの一部ファイルが削除されていたことでした。
つまり、WordPressリカバリーだけで全部が元通りになるわけではなく、もともと使っていたテーマやプラグインの構成まで自動で完全復元されるわけではありませんでした。
そのため、復旧作業では以下が重要でした。
- どのテーマを使っていたか
- どのプラグインを使っていたか
- 有料テーマや独自テーマだったか
- 追加していた機能が何だったか
この記録が残っていないと、どこまで戻せば元の状態なのか判断しづらくなります。
今回の対応
今回はこちらの対応で復旧できました。
使用していたテーマを確認する
まず、元々使っていたテーマを確認しました。
親テーマ・子テーマを使っている場合は、その構成も含めて把握しておく必要があります。
特に子テーマを利用している場合、再インストール後に追加調整が必要になることがあります。
使用していたプラグインを確認する
次に、元々入れていたプラグインを洗い出しました。
不正ファイル削除の影響で、一部プラグインが欠けていたり、正常に動作しない状態になっていたためです。
テーマとプラグインを再インストールする
使っていたものを再インストールしたところ、表示や機能がかなり元の状態に戻りました。
今回の感覚としては、WordPressリカバリーで土台を戻し、そのあとに不足しているテーマ・プラグインを入れ直すことで復旧できた、という流れです。
復旧時に記録しておいたほうがよいもの
今回やってみて、事前に記録があるかどうかで復旧のしやすさがかなり変わると感じました。
最低限、以下は控えておいたほうがよさそうです。
- 使用中のテーマ名
- 子テーマの有無
- 使用中のプラグイン一覧
- 有料テーマ・有料プラグインの購入情報
- wp-config.phpのDB接続情報
- カスタマイズ内容
- 追加CSSや計測タグの有無
特に、テーマやプラグインの情報は見落としやすいですが、今回のように削除後の復旧ではかなり重要でした。
まとめ
XserverのWordPressリカバリーを試した結果、WordPress本体側の復旧には役立ちました。
ただ、今回のケースではそれだけでは不十分で、削除されていたテーマやプラグインの一部を再インストールすることで元に戻せた形でした。
そのため、不正アクセス後の復旧では、単にリカバリーを実行するだけではなく、元々何を使っていたかを記録しておくことが重要だと感じました。
今後に向けては、テーマ名、プラグイン一覧、DB情報、子テーマの有無などを、すぐ確認できる形で残しておこうと思います。




