「WordPressがマルウェア感染したかもしれないけれど、どのファイルが怪しいのか分からない」
そんな状態で、やみくもにファイルを削除してしまうと、必要なテーマやプラグインまで壊してしまうことがあります。
特に初心者の方は、スキャン結果に並んだ英数字や見慣れないPHPファイルを見るだけで不安になりがちです。
ただ、WordPressマルウェア駆除を自分で進める時に大切なのは、最初から完璧に直そうとすることではなく、感染ファイルの候補を安全に絞ることです。
WordPressマルウェア駆除を自分で行う方法の中でも、今回のテーマは「どこを見れば感染ファイルを見つけやすいか」です。
削除の前に見る順番を決めれば、被害拡大を防ぎながら次の一手を選びやすくなります。
WordPressの復旧を多数手がけてきたよこやま良平です。わたしの現場経験をもとに、感染ファイルを見つける基本手順に絞って、初心者でも壊しにくい確認方法を解説します。
- WordPressマルウェア駆除で感染ファイル探しを始める前の準備
- 感染ファイルが見つかりやすい場所と優先順位
- スキャン結果や更新日時から候補を絞る基本手順
- 怪しいコードを見つけた時にすぐ削除しない判断基準
- 感染ファイル確認後に必要な再発防止の入口対策
WordPressマルウェア駆除を自分で行う方法は、プラグイン任せで終わるものではありません。
スキャン、比較、確認、隔離、復元という順番で考えると、初心者でも「どれが本当に怪しいか」を見分けやすくなります。
この記事では、感染ファイル候補を見つける作業に集中して、サーバー上のどこを見るか、何を記録するか、
どこで止まるべきかまで順番に整理します。
WordPressマルウェア駆除で感染ファイル探しを始める前に症状を整理します
WordPressマルウェア駆除で最初にやるべきことは、FTPを開いて片っ端から探すことではなく、症状と発生時期を整理することです。
理由は、感染ファイルの場所は症状によって当たりを付けやすいからです。
スマホだけリダイレクトされるのか、検索結果にスパムページが出るのか、管理画面に知らないユーザーが増えたのかで、優先して見る場所が変わります。
- いつから症状が出始めたか
- PCだけか、スマホだけか、検索結果だけか
- 直前に更新したテーマ・プラグイン・サーバー設定
- 警告画面や不審ページのURLとスクリーンショット
- 管理者ユーザー追加やメール通知の有無
この整理があるだけで、「トップページは正常だが検索結果だけ汚染されているならデータベースや隠しファイルも怪しい」といった切り分けができます。
症状が広いほど、感染ファイルも複数ある前提で動いた方が安全です。
WordPressマルウェア駆除で感染ファイルが見つかりやすい場所から見ていきます
WordPressマルウェア駆除で感染ファイルを探す時は、すべてのフォルダを同じ重みで見る必要はありません。
マルウェアは、書き込みやすく、見落とされやすく、更新差分が分かりにくい場所に置かれやすい傾向があります。
そのため、まずは「怪しいファイルが増えやすい場所」から順に確認する方が効率的です。
wp-content/uploads/配下のPHPファイルや見慣れないサブフォルダwp-content/themes/使用中テーマ/のfunctions.phpやheader.phpwp-content/plugins/内の使っていないプラグインや最近増えたフォルダ- ルート直下の
index.php、.htaccess、wp-config.php - キャッシュ系や一時保存を装ったランダム名ファイル
uploads フォルダは本来、画像やPDFが中心です。そこに .php ファイルがあるなら、かなり強い違和感として扱ってください。
ただし、正規プラグインが一時的に生成しているケースもあるため、ファイル名と作成元は必ず確認します。
テーマファイルは、見た目に関係するため改ざんされるとすぐ症状が出ることがあります。
一方で、プラグインや uploads 内のファイルは、普段触らないため見落としやすい場所です。
WordPressマルウェア駆除で感染ファイル候補を絞る基本手順を使います
WordPressマルウェア駆除を自分で行う方法では、「怪しい場所」を見つけた後に候補を絞る作業が重要です。
感染ファイル候補を減らせないまま作業すると、正規ファイルまで疑ってしまい、必要以上に時間がかかります。
ここでは、初心者でも使いやすい4つの絞り込み軸を使います。
- 更新日時が症状発生の前後に集中していないか
- 本来その場所にない拡張子やファイル名ではないか
- Wordfenceなどのスキャン結果に同じパスが出ていないか
- 正規のWordPress本体やバックアップと差分があるか
更新日時は、特に手がかりになりやすい項目です。
「昨日の深夜3時に複数ファイルがまとめて更新されている」「使っていないプラグインが同時刻に書き換わっている」といった動きは、手作業より自動処理の痕跡として疑えます。
また、スキャン結果はそれ単体で削除判断に使うのではなく、他の情報と重ねて使います。
場所、時刻、コード内容、症状の4つがそろった時に、感染ファイル候補としてかなり濃くなります。
正規ファイルと比較して差分を見る
もうひとつ有効なのが、正規のWordPress本体や配布元テーマと比べて差分を見る方法です。
特にコアファイルや公式テーマは、本来の中身を確認しやすいため、余計なコードが混ざっていないかを判断しやすくなります。
比較時に見るポイント
- 末尾に長い英数字の文字列が追加されていないか
- 見覚えのない external URL がないか
- コメントアウトの中に不自然な PHP が隠れていないか
- 1ファイルだけ更新日時が不自然に新しくないか比較できる元データがない場合でも、公式配布ファイルをダウンロードして構造だけ見比べると、怪しい差分が浮きやすくなります。
「同じ名前だから大丈夫」と思わず、中身まで一度確認するのが安全です。
WordPressマルウェア駆除で感染ファイルを確認する時の具体例を知っておきます
WordPressマルウェア駆除では、怪しいコードの形を少し知っておくだけでも、見逃しを減らせます。
もちろん、見慣れないコードがすべてマルウェアではありません。
ただ、暗号化や難読化に使われやすい関数、見覚えのない外部URL、短いファイル名のPHPスクリプトなどは、感染ファイル候補として必ず記録しておきましょう。
uploads 配下の PHP を確認する
まず確認しやすいのは、wp-content/uploads/ の中にある PHP ファイルです。
画像フォルダの中に実行ファイルがある時点で、不自然なケースが多くあります。
# uploads 内の PHP ファイル例
wp-content/uploads/2026/06/cache.php
wp-content/uploads/tmp/class.wp.php
wp-content/uploads/images/1x.phpこのようなファイルを見つけたら、削除前に必ずコピーを取り、更新日時と中身を記録します。
同じ名前のファイルが複数階層にないかも合わせて確認してください。
難読化コードの有無を確認する
テーマやプラグインのPHPに、意味の分かりにくい長い文字列や難読化コードが差し込まれていないかも見ます。
// 典型例のひとつ
eval(base64_decode('長い英数字の文字列'));
// 外部通信を隠している例
$x = gzinflate(base64_decode('長い英数字の文字列'));これだけで即アウトとは言い切れませんが、functions.php や header.php の末尾に突然入っているなら要注意です。
正規テーマの元ファイルと比較できるなら、その差分を見るのが最も安全です。
データベース改ざんも同時に疑う
感染ファイルを見つけても、データベースにスパムリンクや不審スクリプトが残っていれば症状は止まりません。
wp_postsの本文や下書きに不審な外部リンクがないかwp_optionsに知らないURLやスクリプトがないかwp_usersに追加された管理者がいないかwp_usermetaで権限昇格の痕跡がないか
ファイルだけ見て終わらせないことが、再発防止には欠かせません。
検索結果汚染や隠しページがある場合は、データベース側もほぼセットで確認した方がよいです。
WordPressマルウェア駆除で感染ファイルを削除する前の判断基準を持ちます
WordPressマルウェア駆除を自分で行う方法では、感染ファイル候補を見つけた後に「すぐ削除しない」判断がとても重要です。
なぜなら、同じ見た目でも「削除すべきファイル」と「正規ファイルを元に戻すべきケース」と「その場で止まるべきケース」があるからです。
ここを混同すると、サイトが真っ白になったり、復旧証拠を失ったりします。
- アップロード画像内の単独PHPなど、用途が説明しにくいファイルは隔離候補
- 使用中テーマや必須プラグイン内の改変は、正規ファイルとの比較が先
wp-config.phpや.htaccessは全体影響が大きいため慎重に扱う- 複数箇所に同じコードがある場合は、入口が残っている前提で考える
- 判断できない時は、その時点で停止して相談する
初心者の方が自分でできる範囲は、「怪しい候補を記録して、隔離または比較の準備をする」までと考えると無理がありません。
本番サイトで直接編集するより、まずバックアップ側で確認する方が安全です。
WordPressマルウェア駆除で感染ファイル確認後に再発防止の入口を閉じます
WordPressマルウェア駆除は、感染ファイル候補を見つけた時点で終わりではありません。
入口が残ったままだと、別のファイルがまた作られて、同じ症状が短期間で再発します。
そのため、感染ファイル確認後は「どこから入られたのか」を想定して、最低限の入口対策まで行います。
ここまでやって初めて、感染ファイル探しの意味が生きてきます。
- 管理者・FTP・サーバーパネルのパスワード変更
- 使っていないプラグイン・テーマ・ユーザーの削除
- WordPress本体・テーマ・プラグインの更新
- uploads 直下の PHP 実行制限やログイン防御設定
- Search Console と主要ページの再確認
もし検索結果にカジノ系タイトルや知らないページが出ていたなら、Google側に残っている汚染URLも確認します。
サーバーを直しても、再クロールされるまでは検索結果に古い情報が残ることがあるためです。
復旧後は、トップページだけでなく、固定ページ、投稿、問い合わせフォーム、スマホ表示、シークレットウィンドウも見てください。
表面だけ正常に見えて、特定条件でだけ症状が残るケースは珍しくありません。
WordPressマルウェア駆除で感染ファイルを見つける基本手順まとめ
WordPressマルウェア駆除を自分で行う方法では、いきなり削除するのではなく、症状整理、怪しい場所の確認、更新日時とスキャン結果での絞り込み、
コード内容の確認、入口対策という順番で進めるのが安全です。
感染ファイル探しの段階で大切なのは、「怪しいかもしれない」を丁寧に記録することです。
それだけでも、誤削除を防ぎ、専門家へ相談する時の材料として役立ちます。
自分で判断できないファイルが出てきたら、そこで止まることも立派な対応です。
早い段階で正しく切り分けられれば、復旧時間も再発リスクも抑えやすくなります。
WordPressの感染ファイル確認が自分で進められない時は

ホームページの乗っ取り・マルウェア感染・不正アクセスでお困りなら、
クイックレスキューが解決します。
- 感染ファイル候補は見つかったが、消してよいか判断できない
- スキャン結果の件数が多すぎて自分で絞り込めない
- テーマやプラグインの改ざんまで疑われる
- 検索結果汚染やリダイレクトが止まらない
- 復旧だけでなく再発防止までまとめて見てほしい
- 万一復旧できない場合やマルウェア駆除できない場合は全額返金保証で安心
- 90日間再感染保証・動作保証で安心
- 初期費用・調査費用0円で安心
