消しただけでは戻る理由
検査ソフトが挙げたファイルは、侵入された結果として置かれたものです。入口は多くの場合それとは別にあります。更新していないプラグインの欠陥や、盗まれた管理画面・FTP(ファイル転送の仕組み)の認証情報がそれにあたります。検出されたファイル自体が、その後の出入りに使われている場合もあります。どちらであっても、挙げられたものを消すだけでは入口が残ります。
作業の仕方にも戻る余地があります。WordPress公式のドキュメント(2026年7月更新)は、管理画面からの再インストールを使わないよう案内しています。その機能は既存のファイルを上書きするだけで、新しく置かれたファイルはそのまま残るためです。「入れ直したのに変わらない」という状態は、ここで起きます。
再発までの間隔は、手がかりの1つになります。短い間隔で戻るなら、入口か再設置の仕組みが残っている疑いが強くなります。消す作業を繰り返すより、次の節の見分けに進んでください。
正しい状態と比べられる範囲、比べられない範囲
WordPress公式のドキュメントは、公式の配布物と同じ版で置き換えてよい範囲としてWordPress本体の2つのフォルダ(wp-admin と wp-includes)を挙げ、テーマとプラグインが入るフォルダ(wp-content)については、より慎重に見て入れ替えるよう案内しています。設定ファイル(.htaccess)が設置先の直下だけでなく複数の階層に置かれることがある点にも触れています。
同じ資料は、駆除の手順が症状や作業者の習熟など複数の条件で決まること、全部を消して作り直せる場合もあるが多くの場合はそうできないことも書いています。つまり、どちらを選ぶかまでは資料が決めてくれません。
そこで当方は、その範囲を「本来どうあるべきか」と比べられるかどうかを、進め方を決めるときの材料にしています。これは公式の案内から導いた線ではなく、対応の実務で使っている整理です。比べるものがあれば違いを見つけて戻せますが、無ければ、そのファイルが正しいかどうかを確かめる方法がありません。
| 範囲 | 比べる相手になり得るもの | 確かめ方 |
|---|---|---|
| WordPress本体(wp-admin・wp-includes) | 公式の配布物と同じ版 | 同じ版で置き換えられる |
| 公式ディレクトリのプラグイン・テーマ | 公式の配布物 | 手を入れていなければ、同じ版で置き換えられる |
| 自作・有料配布のテーマとプラグイン | 制作元の控え、バージョン管理の記録 | どちらも無ければ、個別に中身を確かめるしかない |
| 画像などのアップロード先 | 元の素材、汚染前の控え | 無ければ、置かれた時期と種類から個別に判断する |
| サーバーの設定ファイル(.htaccess) | 汚染前の控え、設定した本人の記録 | 無ければ、記述を1つずつ確かめる。複数の階層を見る |
| データベースの中身 | 汚染前の書き出し | 無ければ、投稿と設定を個別に確かめる |
部分的な駆除で見込みが立つ材料
次がそろっているほど、置き換えと除去で戻せる見込みが立ちます。ただし、これは合格の条件ではありません。ファイルがすべて公式の配布物と一致していても、データベース、利用者アカウント、作業に使った端末を確かめていなければ足りません。
- 侵入の時期が絞れている:いつ以降が汚染された状態かが分かる。どの控えが汚染前かを決められる。
- 改ざんが、比べる相手のある範囲に収まっている:上の表の「同じ版で置き換えられる」側だけに変更がある。
- 手を入れた範囲についても、比べる相手がある:バージョン管理の記録や、制作元が持つ配布前の控えなど。
- 接続に使う認証情報をすべて入れ替えた:管理画面、FTP、サーバーパネル、データベースを個別に変更する。1つ残せばそこから戻れる。
- 入口が特定でき、塞げている:欠陥のあるプラグインを更新した、漏れた認証情報を変えた、といった形で確定している。
作り直しへ寄せる材料
次が当てはまるほど、部分的な駆除では終わらない見込みが強くなります。1つ当てはまれば自動的に作り直し、という線ではありません。別の方法で確からしい状態を組み直せることもあります。当てはまる数と、確かめられない範囲の広さで判断してください。
- 侵入の時期が絞れない:どの控えが汚染前かを決められない。戻した先がすでに汚染されている可能性が残る。
- 比べる相手の無い範囲に、変更の疑いがある:自作テーマやアップロード先など。正しい状態が分からないため、消してよいかを判断できない。
- 駆除と認証情報の入れ替えのあとに、再び改ざんされた:残っている仕組みを特定できていないことを示す。同じ作業を繰り返しても結果は変わらない。
- サーバーの設定や、他の領域まで及んでいる:定期実行の設定、.htaccess、同じ契約内の別サイトなど。WordPressの中だけを直しても戻る。
どちらとも決められないとき
記録が残っていなければ、侵入の時期も入口も確定できません。共用のレンタルサーバーでは、開示される記録の範囲と保存期間の制約から、この状態になることがあります。公式のドキュメントも、必要な情報が手元にないために原因の分析まで進めない場合があるとしています。
この場合は、経路が確定しないまま安全な状態へ戻す進め方になります。比べる相手を用意できない範囲が広いほど、作り直しに寄ります。逆に、その範囲が限られていて、ほかの方法で確かめられるなら、経路が分からなくても部分的な対応で収まることがあります。
どちらに進む場合でも、作業を始める前に現状の複製を取ってください。汚染された状態のままでも構いません。公式のドキュメントも、清掃に入る前にもう一度控えを取ることを勧めています。作業の途中で記録が上書きされると、あとから見返す材料がなくなります。
参考情報(外部サイト)
本文で参照した外部の公開情報です。
- FAQ My site was hacked(外部サイト)(WordPress.org)