
「サイトが改ざんされたかもしれない」と感じたとき、まず必要なのは復旧作業ではなく状況の確認です。改ざんは管理画面を見ているだけでは気づけないことがほとんどで、気づいたときには数週間経過していた、という例も珍しくありません。この記事では、改ざんされているかどうかを自分で確認する手順を、症状別に整理します。
この記事でわかること
- 改ざんを疑うべき代表的な症状
- 管理画面を経由せずに確認する方法
- ファイル・データベース・ユーザーそれぞれの確認手順
- 確認できたあと、最初にやってはいけないこと
- 自力対応と専門業者への依頼を分ける判断基準
目次
- 改ざんを疑うべき5つの症状
- 検索エンジンから見た自分のサイトを確認する
- ファイルの改ざんを確認する
- データベースの改ざんを確認する
- ユーザーと権限を棚卸しする
- 確認できたあとにやってはいけないこと
- 自力で対応できる範囲の見極め
- まとめ
改ざんを疑うべき5つの症状
次のいずれかに当てはまる場合、改ざんの可能性があります。特に上から2つは、管理画面を普通に見ているだけでは絶対に気づけません。
検索結果に身に覚えのない文字が出る
自社サイトを検索したとき、タイトルや説明文が別の言語・別の商材になっている状態です。日本語のサイトなのに、検索結果には英語や中国語で医薬品名やブランド品名が並ぶ、というのが典型的なパターンです。
これは攻撃者が、検索エンジンのクローラーに対してだけ別の内容を返す仕組みを仕込んでいるために起こります。ブラウザで普通にアクセスしても正常なページが表示されるため、運営者は気づきません。
スマートフォンで見たときだけ転送される
PCでは正常なのに、スマートフォンからアクセスすると別サイトへ飛ばされる、という症状です。これも閲覧環境を判定して動作を変える仕組みで、管理者がPCで確認している限り発見できません。
「お客様から『スマホで見たら変なサイトに飛んだ』と連絡があった」という形で発覚することが多いです。
身に覚えのない管理者ユーザーがいる
ユーザー一覧に、作成した覚えのない管理者権限のアカウントが存在する状態です。侵入後に再侵入用の入り口として作られます。ユーザー名は既存のものと紛らわしい名前になっていることもあります。
サーバーの転送量が急増している
アクセス数は変わらないのに転送量だけが跳ね上がっている場合、サイトがスパムメールの送信元にされている、あるいは不正なファイルの配布元にされている可能性があります。
Google から警告が届いた
Google Search Console に「セキュリティの問題」が通知される、あるいは検索結果に「このサイトは第三者に不正アクセスされている可能性があります」と表示される状態です。この段階では、すでに検索順位にも影響が出ています。
検索エンジンから見た自分のサイトを確認する
最初に行うべき確認です。Google の検索窓に site:あなたのドメイン と入力して検索してください。
自分が作った覚えのないページが並んでいれば、改ざんはほぼ確実です。この方法が有効なのは、管理画面を経由せずに、検索エンジンが認識しているページの一覧を見られるためです。攻撃者が隠したページも、検索エンジンには登録されていることが多く、ここで発見できます。
あわせて、Search Console の「インデックス作成」→「ページ」で、インデックス数が不自然に増えていないかも確認してください。数ページのサイトなのに数百ページが登録されている場合、大量の不正ページが生成されています。
ファイルの改ざんを確認する
更新日時から探す
FTPソフトやサーバーのファイルマネージャーで、WordPress のフォルダを更新日時の新しい順に並べ替えます。自分が作業していない日付でファイルが更新されていれば、それが手がかりです。
特に確認すべきファイルは次のとおりです。
wp-config.php— 冒頭や末尾にコードが追記されていないかindex.php— 本来数行しかないファイルに長いコードが入っていないか.htaccess— 見覚えのないリダイレクト記述がないか- テーマの
functions.php— 末尾への追記が多い
uploads フォルダの中を確認する
wp-content/uploads は画像などをアップロードする場所です。ここに .php ファイルが存在する場合、正常な運用ではまずあり得ません。画像を置く場所にプログラムが置かれているということは、外部から実行できる入り口が作られている可能性が高い状態です。
ファイル名は wp-cache.php のように、一見それらしい名前になっていることが多く、名前だけでは判断できません。「uploads の中にPHPファイルがある」という事実そのものが異常だと考えてください。
本体ファイルの差分を検出する
WordPress 本体は公式に配布されているものと同一のはずです。1バイトでも違えば改ざんが疑われます。セキュリティプラグインには、公式ファイルと比較して差分を検出する機能があります。
ただし注意点があります。すでに侵入されている場合、検出用のプラグイン自体が無効化されていることがあります。「スキャンして何も出なかった=安全」とは限りません。プラグインが正常に動作しているかどうかも含めて確認してください。
データベースの改ざんを確認する
見落とされやすいのがデータベースです。ファイルをすべてきれいにしても、データベース内に不正なコードが残っていれば改ざんは続きます。
確認すべき箇所は主に次の3つです。
- 投稿・固定ページの本文 — 記事末尾に
<script>タグや、画面外に飛ばされたリンクが埋め込まれていないか - オプション設定 — サイトURLや管理者メールアドレスが書き換えられていないか
- ウィジェット — テキストウィジェットにスクリプトが仕込まれていないか
phpMyAdmin などで、記事本文のテーブルを script や iframe といった文字列で検索すると、まとめて確認できます。
ユーザーと権限を棚卸しする
「ユーザー」画面で、権限グループが「管理者」のアカウントをすべて確認します。心当たりのないアカウントがあれば、それが侵入の証拠です。
あわせて次も確認してください。
- 退職者のアカウントが残っていないか
- 制作会社に渡したアカウントが管理者権限のままになっていないか
- 不要に権限の高いアカウントがないか
不正なアカウントを削除しただけでは不十分です。侵入経路が残っていれば、また作られます。削除と並行して、既存アカウントのパスワードもすべて変更してください。
確認できたあとにやってはいけないこと
改ざんが確認できた時点で、多くの方が急いで復旧しようとします。ここで慌てて次のことをすると、状況が悪化します。
いきなり上書き更新・再インストールする
本体を上書きすれば表面上は直ったように見えますが、侵入経路の痕跡が消えます。原因が分からないまま復旧すると、同じ穴から再び侵入され、数日で元通りになります。実際、復旧のご相談のうち一定数は「一度自分で対処したが再発した」というものです。
ログを確認せずに作業を始める
サーバーのアクセスログは、侵入経路を特定する唯一の手がかりであることが多いです。しかも保存期間は数週間程度のサーバーが大半で、後から取得することはできません。作業を始める前に、最低でも過去1か月分のログを手元に保存してください。
改ざんされた状態のバックアップを取らずに消す
改ざんされたファイルは証拠です。消してしまうと、何が起きたのかを後から調べられなくなります。取引先への説明が必要になる場合、この記録の有無が大きく効いてきます。
自力で対応できる範囲の見極め
次に当てはまる場合は、専門業者への相談をおすすめします。
- 侵入経路が特定できない、ログが残っていない
- 復旧しても数日で再発する
- データベース内にも不正なコードが入っている
- 同一サーバー内で複数サイトを運用しており、他サイトへの 影響 が不明
- Google に警告が表示されており、早期の解除が必要
- ECサイト・会員サイトで、個人情報の流出が疑われる
逆に、次の条件がそろっていれば自力対応も可能です。侵入経路が明確(更新を止めていたプラグインの脆弱性など)で、感染範囲が限定的、かつ侵害前のバックアップが世代で残っている場合です。
まとめ
改ざんの確認で重要なのは、管理画面の外から見ることです。攻撃者は管理者に気づかれないよう作り込んでいるため、普通に管理画面を開いているだけでは発見できません。
- まず
site:検索で、検索エンジンから見た自サイトを確認する - ファイルは更新日時と uploads 内の PHP ファイルを重点的に見る
- データベース内の不正コードも忘れずに確認する
- 復旧を始める前に、現状のバックアップとログを保全する
「改ざんされたかどうか分からない」という段階でも構いません。判断に迷われる場合は、WordPressレスキューまでご相談ください。確認から復旧、再発防止までを一括で対応しています。

