Copy
「あれ?サイトが変…」今すぐチェック!WordPressサイト乗っ取りの兆候と対処法
「いつもと違う広告が表示されている…」
「ログインパスワードが突然使えなくなった…」
「Googleから『危険なサイト』という警告が…」
もしこのような状況に心当たりがあるなら、あなたのWordPressサイトはすでにハッカーに侵入されている可能性があります。被害に気づくまでの数ヶ月かかるような事例もあり、その間にも被害は拡大し続け、最悪の場合、顧客情報の流出や訪問者へのマルウェア感染など、取り返しのつかない事態に発展することもあります。
この記事では、WordPress開発歴10年の専門エンジニアの知見をもとに、サイトの乗っ取りや改ざんを素早く発見する方法と、ステップバイステップの対処法を解説します。
あなたのサイトは侵害されているかも?14の危険信号チェックリスト
まずは、あなたのサイトが侵入されている可能性を判断するための兆候をチェックしましょう。以下の項目に1つでも該当する場合は、セキュリティ侵害の可能性があります。
表面的な兆候(一般ユーザーにも見えるもの)
- □ 見覚えのないコンテンツや広告が表示されている
- □ リンクをクリックすると不審なサイトにリダイレクトされる
- □ サイトのデザインが突然変更された
- □ 「お使いのコンピュータはウイルスに感染しています」などの警告が表示される
- □ Googleの検索結果に「このサイトは危険な可能性があります」という警告が表示される
- □ サイトの読み込みが著しく遅くなった
管理者が確認できる兆候
- □ 管理者パスワードでログインできなくなった
- □ 知らないユーザーアカウントが存在する
- □ ログインしていないのに管理画面で変更が行われている
- □ アクセス解析に不審なトラフィックスパイクがある
技術的な兆候(バックエンドで確認できるもの)
- □ FTPやサーバー上に見覚えのないファイルがある(特に.php、.js、.htaccess)
- □ サーバーログに不審なアクセスパターンがある
- □ データベース内に不審なコードや変更がある
- □ ホスティング会社から過剰なリソース使用の警告がある
該当項目数 | リスクレベル | 推奨アクション | 緊急度 |
---|---|---|---|
1-2項目 | 低〜中 | 状況確認と予防対策 | 24時間以内 |
3-5項目 | 中〜高 | 詳細調査と一部復旧作業 | 12時間以内 |
6項目以上 | 最高 | 緊急対応と専門家への相談 | 即時(数時間以内) |
3項目以上に該当する場合は、すぐにセキュリティ緊急対応サービスにご相談ください。侵害の規模に関わらず、専門家の支援を受けることで被害を最小限に抑えられます。
WordPressハッキングの5大手法と狙われやすい脆弱性
ハッカーはどのようにしてあなたのサイトに侵入するのでしょうか?主な攻撃手法と脆弱性を理解することで、効果的な対策が可能になります。
1. 脆弱なプラグイン・テーマの悪用(発生率:40%)
攻撃手法:
古いバージョンのプラグインやテーマに存在する既知の脆弱性を悪用してサイトに侵入します。特に更新が長期間行われていないプラグインが標的になりやすいです。
攻撃の兆候:
- プラグイン関連のファイルに不審なコードが挿入されている
- 特定のプラグイン機能を使用した時のみ不審な挙動が発生する
- プラグインのバージョンが自動的に古いものに戻る
よく狙われるプラグインの例:
古いバージョンのContact Form 7、Revolution Slider、WooCommerce、JetPack、TinyMCEなど、多くのサイトで使用される人気プラグイン
2. ブルートフォース攻撃(発生率:25%)
攻撃手法:
自動化されたツールを使用して大量のパスワード候補をしつこく試し、ログイン認証を突破します。弱いパスワードや単純なユーザー名(「admin」など)が設定されたサイトが特に危険です。
攻撃の兆候:
- ログイン試行の失敗が大量に記録されている
- サーバーログに同一IPからの連続アクセスが多数ある
- 管理者アカウントへの不審なログイン記録
よく使われる手口:
辞書攻撃(一般的な単語を使用)、総当たり攻撃、よく使われるパスワードリストを用いた攻撃
3. フィッシングとソーシャルエンジニアリング(発生率:15%)
攻撃手法:
管理者をだまして認証情報を入力させる偽のログイン画面や、マルウェアが仕込まれたファイルをダウンロードさせるなど、人間の心理を悪用した攻撃です。
攻撃の兆候:
- 不審なログイン通知メールが届いた
- WordPressの管理画面によく似た偽サイトへのリンクが届く
- 突然の権限昇格リクエストがある
よくある手口:
「WordPressセキュリティアップデート」を装ったメール、「アカウント検証」を求める通知、「プラグイン緊急アップデート」を装ったダウンロードリンク
4. SQLインジェクション攻撃(発生率:12%)
攻撃手法:
フォームやURL変数を通じて悪意のあるSQLコマンドを注入し、データベースから情報を抜き取ったり、データを改ざんしたりします。
攻撃の兆候:
- データベース内に不審なレコードやユーザーが作成されている
- サイトのコンテンツが改ざんされる
- データベースエラーが頻発する
よく狙われる部分:
検索フォーム、コメントフォーム、URL変数を使用するページ、カスタムクエリを実行する部分
5. クロスサイトスクリプティング(XSS)(発生率:8%)
攻撃手法:
サイト内にJavaScriptなどの悪意のあるスクリプトを埋め込み、サイト訪問者のブラウザでそのスクリプトを実行させます。Cookieの盗み取りやフォームの改ざんなどに使われます。
攻撃の兆候:
- サイト内のリンクが不審なURLに変更されている
- ポップアップや広告が突然表示される
- HTMLソース内に不審なJavaScriptコードが埋め込まれている
よく狙われる部分:
コメント欄、ユーザープロフィール、お問い合わせフォームなど、ユーザー入力を表示する部分
セキュリティ侵害発生時の緊急対応7ステップ
セキュリティ侵害を発見した場合、迅速かつ体系的な対応が必要です。エーデルハーツで実践している緊急対応の7ステップを紹介します。
ステップ1:冷静に状況を評価する
パニックにならず、まずは侵害の範囲と深刻度を把握します。
- 侵害の発見時期:いつから異常が発生しているか
- 影響範囲の確認:どのページ、どの機能が影響を受けているか
- 利用者への影響:訪問者やユーザーへの影響はあるか
- 重要度の判断:個人情報漏洩やマルウェア拡散などの深刻な被害があるか
プロの対応ポイント: スクリーンショットを取り、異常な状態を記録しておきましょう。時系列で変化を記録し、対策の証拠としても使えます。
ステップ2:サイトを一時的に隔離する
被害拡大を防ぐため、必要に応じてサイトを一時的に隔離します。
隔離レベル | 方法 | 影響 | 状況に応じた選択 |
---|---|---|---|
レベル1 (情報収集) |
メンテナンスモードの有効化 | 一般ユーザーアクセス不可 管理者は操作可能 |
軽微な侵害 原因調査中 |
レベル2 (部分隔離) |
テーマを標準テーマに切替 プラグインを無効化 |
機能制限あり 基本表示は可能 |
プラグイン/テーマ起因の侵害 部分的な改ざん |
レベル3 (完全隔離) |
サーバーからの切断 静的メンテナンスページ表示 |
サイト完全停止 管理者も操作不可 |
重大なマルウェア感染 進行中の攻撃 |
プロの対応ポイント: サイトを隔離する前に、現在の状態のバックアップを取得しておきましょう。証拠保全の観点からも重要です。
ステップ3:マルウェアスキャンと侵入経路の特定
サイト内の悪意あるコードを検出し、どのように侵入されたかを特定します。
- 自動スキャンツールの実行:
- Wordfence Security(無料版でも基本スキャン可能)
- Sucuri SiteCheck(外部からのスキャン)
- Anti-Malware Security and Brute-Force Firewall
- サーバーログの確認:
- アクセスログ(不審なIPアドレスやアクセスパターン)
- エラーログ(攻撃試行のエラー記録)
- FTPログ(不正ファイル変更履歴)
- ファイルの完全性チェック:
- コアWordPressファイルの改ざんチェック
- タイムスタンプの確認(最近変更されたファイル)
- 隠しファイルやバックドアの検索
プロの対応ポイント: 以下の主要な侵入経路を重点的に調査しましょう:
.htaccess
ファイルの改ざんwp-config.php
への不正コード挿入- テーマの
functions.php
の改ざん index.php
ファイルの先頭や末尾への不正コード追加- データベース内の
wp_options
テーブルへの悪意あるコード挿入
ステップ4:マルウェア除去とクリーンアップ
侵害されたファイルを特定し、マルウェアを完全に除去します。
- WordPressコアファイルのリセット:
- 公式サイトから最新版をダウンロード
wp-config.php
とwp-content
を除いて上書き
- 感染したプラグインの処理:
- 全プラグインの無効化
- 信頼できる公式ソースから再インストール
- 必要なプラグインのみ一つずつ有効化
- テーマファイルのクリーンアップ:
- テーマを標準テーマ(Twenty Twenty-Fourなど)に切り替え
- カスタムテーマを使用する場合は、クリーンソースから再インストール
- データベースの浄化:
wp_posts
テーブル内の不正コード検索wp_options
テーブルの不審なエントリ削除wp_users
テーブルの不正ユーザー削除
プロの対応ポイント: 隠しファイルを発見するには、ターミナルやFTPクライアントで「すべてのファイルを表示」オプションを有効にし、base64_decode
やeval(
などの危険な関数を含むファイルを検索しましょう。
ステップ5:セキュリティ強化と再発防止
クリーンアップ後、同様の攻撃を受けないよう、セキュリティを強化します。
対策カテゴリ | 実施すべき対策 |
---|---|
アクセス管理 | ・すべてのパスワードを強力なものに変更 ・二要素認証の導入 ・ログイン試行制限の設定 ・管理者アカウント名の変更 |
ファイル権限 | ・適切なファイルパーミッションの設定 ・重要ファイルの書き込み権限制限 ・wp-config.phpを600に設定 ・ディレクトリを755に設定 |
プラグイン管理 | ・不要なプラグインの削除 ・定期的な更新計画の策定 ・セキュリティプラグインの導入 ・プラグイン数の最適化 |
サーバーレベル保護 | ・WAFの導入 ・IPブロッキングの設定 ・HTTPSの適用 ・サーバーの脆弱性対策 |
プロの対応ポイント: セキュリティプラグインはWordFenceやSucuri Security、iThemes Securityなどがお勧めです。また、.htaccessに以下のような基本的な保護ルールを追加することも効果的です:
1 2 3 4 5 6 7 8 9 10 11 12 |
# PHPファイル直接アクセス制限 <FilesMatch "^.*(db|config|mysql|env)\.php"> Order Allow,Deny Deny from all </FilesMatch> # ディレクトリリスティングの無効化 Options -Indexes # ブルートフォース対策 LimitRequestBody 10240000 |
ステップ6:外部サービスでの対応
Google Search ConsoleやCloudflareなど、外部サービスでも適切な対応を行います。
- Googleへのサイト再検討リクエスト:
- Search Consoleでサイト所有権を確認
- セキュリティの問題が解決したことを明示
- 「セキュリティの問題」セクションから再審査をリクエスト
- CloudflareやCDNの設定見直し:
- キャッシュのパージ(完全削除)
- セキュリティレベルの一時的な引き上げ
- 不審なIPアドレスのブロック
- DNS設定の確認:
- 不正なDNS変更がないか確認
- サブドメインの設定確認
- DNSSECの有効化検討
プロの対応ポイント: GoogleのSafe Browsing診断ツール(Google Safe Browsing)で、サイトの安全性を確認しましょう。マルウェア検出が続いている場合は、さらに詳細な調査が必要です。
ステップ7:監視体制の強化と定期点検
再発を早期発見するための監視体制を整えます。
- ファイル完全性監視:ファイルの変更を自動検知するシステムの導入
- ログ監視の自動化:不審なアクセスパターンを検出する仕組みの構築
- 定期セキュリティスキャン:週1回以上のマルウェアスキャン実施
- アップデート通知の設定:プラグインやテーマの更新情報を即座に把握
- 定期的なバックアップ検証:リストア可能なバックアップの確保
プロの対応ポイント: wp-content/uploads
ディレクトリは特に注意が必要です。このディレクトリ内では.phpファイルの実行を禁止するよう.htaccessを設定するのが望ましいでしょう。
心強いマルウェア対策:エーデルハーツのセキュリティサービス
エーデルハーツでは、セキュリティ侵害されたWordPressサイトの復旧と再発防止に特化したサービスを提供しています。
セキュリティ対応実績
- 年間対応件数:約40件のセキュリティ侵害対応
- 平均復旧時間:発見から平均8.5時間(重度の感染でも24時間以内)
- 再感染防止率:98.7%(適切なセキュリティ対策を実施した場合)
- データ復旧成功率:99.3%(バックアップが存在する場合)
緊急対応サービスの特徴
- 24時間365日の対応体制
土日祝日、深夜問わず、セキュリティ緊急事態には最優先で対応。平均初回応答時間は2時間以内を実現しています。
- 「小さな会社の強み」を活かした柔軟対応
大手企業では対応困難な緊急事態でも、小回りの利くチームで迅速に対応。意思決定が速く、状況に応じた柔軟な対処が可能です。
- 証拠保全からリカバリーまでのトータルサポート
マルウェア発見・駆除だけでなく、侵入経路の特定、法的対応のための証拠保全、再発防止策の提案まで一貫して対応します。
予防保全型セキュリティサービス
「問題が起きてから対応する」よりも「問題が起きる前に予防する」方が常に効果的です。エーデルハーツの保守サービスでは、以下のセキュリティ対策を標準で提供しています。
サービス内容 | ライト 月額7,800円 |
スタンダード 月額16,800円 |
プレミアム 月額34,800円 |
---|---|---|---|
マルウェアスキャン | 月1回 | 週1回 | 日次 |
ファイル変更監視 | × | ○ | ○ |
セキュリティハードニング | × | ○ | ○ |
脆弱性診断 | × | × | ○ |
WAF設定 | × | ○ | ○ |
不正アクセス監視 | ○ | ○ | ○ |
セキュリティインシデント対応 | 追加料金 | 一部対応 | 優先対応 |
Copy
まとめ:セキュリティ侵害は早期発見と適切な対応が鍵
WordPressサイトのセキュリティ侵害は、早期発見と適切な対応により、被害を最小限に抑えることができます。この記事で紹介した7ステップの対応プロセスは、エーデルハーツが実際の現場で培った知見に基づいています。
重要ポイントの再確認
- 定期的なセキュリティチェック:最低でも週に1回はサイトに異常がないか確認しましょう。
- バックアップは命綱:定期的かつ確実なバックアップ体制があれば、どんな侵害からも復旧できます。
- 更新は優先事項:WordPress本体、プラグイン、テーマの更新は、セキュリティ対策の基本中の基本です。
- セキュリティは投資:月数千円の予防投資が、数十万円の被害を防ぎます。
- 専門家の支援を躊躇しない:セキュリティ侵害の疑いがある場合は、早期に専門家に相談しましょう。
サイバー攻撃は年々巧妙化しており、WordPressサイトは常に標的にされています。しかし、適切な予防策と迅速な対応体制があれば、ほとんどの攻撃から身を守ることができます。
「セキュリティは鎖のように、最も弱い環が全体の強度を決める」という言葉があります。あなたのWordPressサイトに弱い環はないか、今一度確認してみてください。
エーデルハーツでは、WordPressセキュリティに関する無料相談を受け付けています。サイトの安全性に少しでも不安があれば、ぜひお気軽にご相談ください。