【事例】WordPressの脆弱性で複数サイトが被害に!|1サーバー複数サイト運用のリスクと対策

最終更新日:
【事例】WordPressの脆弱性で複数サイトが被害に!|1サーバー複数サイト運用のリスクと対策

企業のホームページ運用では、1つのサーバー内で複数のドメインやホームページを管理しているケースがあります。

コーポレートサイト、採用サイト、サービスサイト、関連会社のサイトなどを、1つのレンタルサーバーにまとめて運用する方法です。

サーバー費用を抑えられる一方で、管理状態によっては、1つのホームページで発生したセキュリティ被害が、同じサーバー内の別サイトにまで広がることがあります。

今回は、実際に弊社で対応したWordPressサイトの改ざん被害事例をもとに、1サーバー複数サイト運用のリスク、バックアップの注意点、再発防止のために行った対策について解説します。

WordPressを利用している企業様や、複数サイトを同じサーバーで管理している企業様は、ぜひ現在の運用体制を見直すきっかけにしてください。

無料でお見積り・ご相談承ります。
お気軽にお問い合わせください。

0120-212-902

平日:9:00~17:00 定休日:土・日・祝

0120-212-902

平日:9:00~17:00 定休日:土・日・祝

目次

 

WordPressの脆弱性を突かれたトラブルの概要

1-1. 1つのサーバーで複数サイトを運用していた

今回のクライアント様は、1つのサーバー内で複数ドメインのホームページを運営されていました。

複数サイトを同じサーバーで管理すること自体は決して珍しいことではなく、コストや管理のしやすさを理由に、複数サイトを1つのサーバーにまとめている企業も多くあります。

1-2. 古いプラグインの脆弱性を悪用された

今回、そのうちの1つのWordPressサイトに導入されていた古いプラグインに、セキュリティ上の致命的な脆弱性が存在していたようで、その脆弱性を第三者に悪用され、不正なファイルやバックドアが設置されてしまいました。

ここから悪夢が始まります。被害がその1サイトだけで終わらなかったのです。

1-3. 関係のないサイトにまで被害が広がった

同じサーバー内で管理されていた、別ドメインのホームページにまで不正ファイルが広がり、ホームページの内容が書き換えられていきました。

最終的には、サーバー会社の判断でアクセス制限がかけられ、ホームページへの正常なアクセスが不能、もしくは困難な状態になりました。

企業サイトにとって、ホームページが見られない状態になることは問い合わせの機会を失うだけでなく、既存顧客や取引先からの信用低下にもつながります。

今回の事例は、WordPressの保守不足とサーバー運用のリスクが重なったことで、被害が大きくなってしまったケースでした。

根本原因は古いWordPressプラグインの脆弱性

2-1. WordPressは便利だが、保守が必要なCMS

今回の直接的な原因は、WordPressに導入されていた古いプラグインでした。

WordPressは非常に便利なCMSです。専門的な知識がなくても更新しやすく、プラグインを追加することでさまざまな機能を実装できます。

しかし、その便利さの一方で、継続的なメンテナンスが必要です。

WordPress本体、テーマ、プラグインには、定期的にアップデートが行われます。アップデートには、機能追加だけでなく、セキュリティ上の問題を修正する目的も含まれています。

2-2. 古いプラグインは攻撃の入口になる

古い状態のまま放置していると、すでに知られている脆弱性を狙われるリスクが高くなります。
特に危険なのは、以下のような状態です。

状態リスク
WordPress本体を長期間更新していない既知の脆弱性を悪用される可能性がある
プラグインを更新していない攻撃の入口になる可能性がある
開発が止まったプラグインを使っているセキュリティ修正が行われない
不要なプラグインが残っている使っていなくても攻撃対象になる
管理画面のログイン情報が弱い不正ログインされる可能性がある
バックアップ体制がない被害時の復旧が難しくなる

今回も、古いプラグインに存在していた脆弱性が攻撃の入口となりました。

2-3. 基本的な管理だけでもリスクは抑えられる

WordPressのセキュリティ対策というと、難しい専門知識が必要に感じるかもしれません。
しかし、基本はそれほど複雑ではありません。

  • 定期的に本体とプラグインを更新すること。
  • 不要なプラグインを削除すること。
  • バックアップを取得すること。
  • 管理状況を把握すること。

このような基本的な管理を継続するだけでも、多くのリスクを抑えることができます。

なぜ同サーバーの別サイトまで被害が広がったのか

3-1. 同じサーバー内の別サイトにも影響が出た

今回の大きな問題は、1つのWordPressサイトの被害が、同じサーバー内の別サイトにまで広がったことです。

1つのサーバー内で複数サイトを運用している場合、サーバーの構成や権限設定によっては、あるサイトに設置された不正ファイルが、他のディレクトリやドメイン領域に影響を与えることがあります。

3-2. 複数サイトをまとめた運用で起こりやすい状態

たとえば、以下のような運用です。

  • 1つのレンタルサーバーに複数ドメインを追加している
  • 同じFTPアカウントで複数サイトを管理している
  • サーバー内のフォルダ構成が複雑になっている
  • 使っていない旧サイトやテスト環境が残っている
  • どのフォルダがどのサイトか分かりにくい

このような状態では、1つのサイトが攻撃された場合に、サーバー全体の調査が必要になります。

被害のあったサイトだけを修正しても、別の場所にバックドアが残っていれば、再び改ざんされる可能性があるためです。

3-3. バックドアが残ると再発する可能性がある

バックドアとは、第三者が再度不正アクセスするために設置する裏口のようなものです。

見た目上はサイトが正常に戻ったように見えても、バックドアが残っていると、時間を置いて再び不正ファイルを設置されたり、ページを書き換えられたりする可能性があります。

そのため、WordPressの改ざん対応では、単に表示を元に戻すだけでは不十分です。

不正ファイルの削除、改ざん箇所の確認、管理画面やFTPのパスワード変更、WordPressやプラグインの更新、不要ファイルの削除など、広い範囲で確認する必要があります。

サーバー会社によるアクセス制限が実施された

不正ファイルの設置やホームページの改ざんが確認されると、サーバー会社はアクセス制限を行うことがあります。

これは、サーバー会社が一方的に厳しい対応をしているというよりも、他の利用者や閲覧者を守るために必要な措置です。

実際に今回のケースでもサーバー会社によるアクセス制限が実施されました。
これによって各ホームページが全て閲覧不可になり、問い合わせも受け付けられない状態になりました。

改ざんされたホームページが放置されると、閲覧者を危険なサイトへ誘導したり、マルウェア感染につながったり、迷惑メールの送信元として悪用されたりする可能性があります。

サーバーの自動バックアップから簡単に復元できるんじゃないの?

5-1. サーバーには自動バックアップ機能があった

今回、サーバー会社側にも自動バックアップ機能はありました。
しかし、サーバーの自動バックアップからの復元は行いませんでした。

理由は、契約していたサーバーの自動バックアップ保持期間が14日間だったためです。

5-2. 不正ファイルの設置時期が分からなかった

不正なファイルやバックドアが設置されたタイミングは、調査時点で明確に特定できませんでした。
そして状況から考えると、不正ファイルが設置されたのは14日より前である可能性が高い状態でした。

この状態でサーバーの自動バックアップから復元してしまうと、一見サイトが過去の状態に戻り、復旧できたように見えるかもしれません。

しかし、そのバックアップデータの中にすでに不正ファイルやバックドアが含まれていた場合、不正な状態に戻してしまうことになります。

5-3. バックアップがあっても安全とは限らない

サーバーの自動バックアップがあるからといって、必ず安全に復元できるわけではありません。

特にWordPressの改ざん被害では、侵入された直後に気づけるとは限りません。数日後、数週間後、場合によってはそれ以上経ってから異常が表面化することもあります。

そのため、バックアップを考える際は、以下の点が重要です。

確認項目注意点
保持期間何日前まで戻せるか
改ざん時期不正ファイルがいつ設置されたか
保存世代複数の時点のバックアップが残っているか
保存場所サーバー内だけでなく外部にもあるか
復元前確認バックアップ内に不正ファイルが含まれていないか
復元後確認バックドアや不審なコードが残っていないか

今回のケースでは、14日間の自動バックアップだけでは、安全に戻せる保証がありませんでした。

そのため、サーバー会社の自動バックアップではなく、弊社側で保持していた過去のバックアップデータを使用して、復元と修正作業を進めることにしました。

たまたま弊社で過去のバックアップデータを保持していたから復旧ができた

6-1. 弊社側のバックアップデータを使用して復旧した

今回幸いだったのは、クレフで過去にこのクライアントのホームページを更新した際に、各サイトのバックアップデータ取得しており、その後削除するのを忘れてたまたま保持していたことです。

このデータをもとに、ホームページの復元と修正作業を進めることができました。
もしバックアップがなかった場合、復旧はさらに難航し、最悪の場合復旧不可だった可能性があります。

6-2. 改ざんされたファイルの確認には時間がかかる

改ざんされたファイルを1つずつ確認し、正常な状態に戻していく作業は簡単ではありません。
どこまで被害が広がっているか分からない場合、調査にも時間がかかります。

また、WordPressサイトはファイルだけで構成されているわけではありません。

投稿内容、固定ページ、設定情報、フォーム設定などはデータベースに保存されています。画像、テーマ、プラグインなどのファイルデータと、データベースの両方が揃っていなければ、正しく復元できないことがあります。

そのため、バックアップでは以下の両方を対象にすることが大切です。

  • WordPressのファイル一式
  • データベース

またプラグインの「all in one wp migration」や「BackWPup」ですと、1回のクリックでファイル一式、データベースをバックアップできるのでおすすめします。

今回のトラブルを踏まえて実施した対策

7-1. サーバー運用と保守体制を見直した

今回のトラブルを受けて、クライアント様とはサーバー運用とWordPress保守の見直しを行いました。

主に実施した対策は以下です。

  • 1サイトにつき1サーバー契約へ分散
  • WordPress本体の定期更新
  • プラグインの定期更新
  • 不要プラグインの整理
  • 定期バックアップの実施
  • 定期メンテナンスの実施
  • サイトの表示・動作確認

7-2. 1サイトにつき1サーバー契約へ変更

特に大きな変更点は、サーバーを分散したことです。
これまでは、1つのサーバー内で複数ドメインのホームページを管理していました。

しかし、今回のように1サイトの被害が他サイトへ広がるリスクを考え、1サイトにつき1サーバー契約で運用する方針に変更しました。

もちろん、すべての企業が必ず1サイト1サーバーにすべきというわけではありません。
ただし、企業にとって重要なホームページを複数運営している場合は、サーバー分散を検討する価値があります。

7-3. 月額費用よりも停止リスクを重視する

一般的なレンタルサーバーであれば、月額1,000円以内で利用できるものも多くあります。

月額数百円から1,000円程度のサーバー費用を節約するために、複数サイトが同時に停止するリスクを抱えるのは、企業サイトの運用としては慎重に考えるべきです。

コスト削減は大切ですが、ホームページが止まった場合の損失や復旧費用、信用低下を考えると、サーバー費用を過度に削ることが必ずしも得策とは限りません。

WordPress保守プランへの加入で運用体制を改善

8-1. 定期的な更新とバックアップを実施

今回の復旧後、クライアント様には弊社のWordPress保守プランにご加入いただきました。
現在は、定期的にWordPress本体やプラグインのバージョンアップ、バックアップ、メンテナンスを実施しています。

WordPressは、公開して終わりのシステムではありません。
公開後も、継続的に管理する必要があります。

8-2. 社内だけで管理しきれない場合は業者に委託する

企業サイトでは、担当者が忙しく、WordPressの更新作業まで手が回らないこともあります。
また、更新通知が出ていても、以下のような不安から放置されることがあります。

  • 更新して表示が崩れたら困る
  • どのプラグインを更新してよいか分からない
  • バックアップの取り方が分からない
  • 以前の制作会社と連絡が取れない
  • 社内に詳しい人がいない

このような場合、無理に社内で対応しようとするよりも、制作会社や保守会社に任せた方が安全です。

1サーバー複数サイト運用は必ず悪いわけではない

9-1. 適切に管理されていれば運用できるケースもある

ここまで読むと、1つのサーバーで複数サイトを運用すること自体が危険に感じるかもしれません。
しかし、1サーバー複数サイト運用が必ず悪いわけではありません。

重要なのは、サーバー内のホームページ・データが適切に管理がされているか。

適切な管理がされており、権限設定、バックアップ、WordPressの更新、不要ファイルの整理が行われていれば、問題なく運用できるケースもあります。

9-2. 管理状況が分からない場合は注意が必要

ただし、広報部やIT管理系の部署がない中小企業のホームページ運用では、現実的に以下のような状態になっていることも少なくありません。

  • いつ作ったサイトか分からない
  • 誰が管理しているか分からない
  • WordPressのログイン情報が分からない
  • 制作会社との契約内容が分からない
  • サーバー内に古いデータが残っている
  • 使っていないテスト環境が残っている
  • プラグインが何年も更新されていない
  • バックアップの取得状況が分からない

このような状態で複数サイトを同じサーバーに入れている場合、1つのサイトの脆弱性が全体のリスクになります。

9-3. 使っていないWordPressが攻撃の入口になる

特に注意すべきなのは、現在使っていないWordPressです。

過去のキャンペーンサイト、リニューアル前の旧サイト、テスト環境などがサーバー内に残っている場合、それらが攻撃の入口になることがあります。

外部から見えにくい場所にあるから安全というわけではありません。
使っていないWordPressや不要なファイルは、削除するか、アクセス制限をかけるなどの対応が必要です。

WordPress運営|今すぐ確認すべきポイント

10-1. サーバー内にいくつのサイトがあるか確認する

今回のような被害を防ぐために、まずは現在のホームページ運用状況を確認することが大切です。
専門的な調査までは難しくても、契約しているサーバー内に、いくつのホームページが入っているかは確認しておきましょう。

確認したい項目は以下です。

  • 運用中のドメイン
  • サブドメイン
  • テスト環境
  • 旧サイトデータ
  • 使っていないWordPress
  • 不明なフォルダ
  • 過去の制作会社が残したデータ

社内で把握できていないサイトやフォルダがある場合は注意が必要です。
不要なデータを放置していると、セキュリティ上のリスクになる可能性があります。

10-2. WordPressとプラグインの更新状況を確認する

次に、WordPress本体とプラグインの更新状況を確認してください。
管理画面にログインし、更新通知が多数表示されている場合は、メンテナンスが滞っている可能性があります。

ただし、古いサイトをいきなり更新するのは危険です。
更新によって、表示崩れやフォーム不具合が発生することもあります。

そのため、事前にバックアップを取得し、必要に応じて専門業者に相談しながら進めることをおすすめします。

10-3. バックアップの保持期間を確認する

バックアップについては、取得の有無だけでなく、保持期間を確認することが重要です。

今回のように、サーバーの自動バックアップ保持期間が14日間しかない場合、不正ファイルがそれ以前に設置されていたときには、安全に戻せない可能性があります。

確認すべき項目は以下です。

確認項目内容
取得頻度毎日、週1回、月1回など
保持期間何日前まで戻せるか
保存世代複数時点のバックアップがあるか
保存場所サーバー内か、外部にもあるか
対象範囲ファイルとデータベースの両方が含まれるか
復元方法実際に復元できる手順があるか

バックアップは、トラブルが起きてからでは取得できません。
平常時にこそ、確認しておくべき重要な項目です。

まとめ|サーバー費用を抑えるより、止まらない運用体制を優先する

今回の事例では、1つのWordPressサイトの脆弱性が原因で、同じサーバー内の複数サイトに被害が広がりました。結果として、不正ファイルの設置やサイト改ざんが発生し、サーバー会社によるアクセス制限まで実施されました。

また、サーバーの自動バックアップは保持期間が14日間だったため、不正ファイルが含まれた状態に戻してしまうリスクがあり、復元には使用しませんでした。幸い、弊社側で保持していた過去のバックアップデータにより復旧できました。

この件を踏まえ、現在は1サイトにつき1サーバー契約へ分散し、クレフにてWordPress本体・プラグインの更新、定期バックアップ、定期メンテナンスを行っています。

WordPressは公開後の保守管理が重要です。クレフでは、WordPress保守やサーバー運用の見直しにも対応していますので、不安がある場合は早めの点検をご相談ください。

この記事の監修スタッフ

アバター画像

Wakasugi

株式会社クレフ
マネジメント/マーケティング
専務取締役

2008年から株式会社クレフにてセールス/ディレクション/マーケティング/マネジメントを担当。大手企業から地元の中小企業まで500社以上の幅広い業種業態のクライアントをサポートして参りました。困った事があれば何でもご相談ください。

このスタッフの記事一覧へ

無料でお見積り・ご相談承ります。
お気軽にお問い合わせください。

0120-212-902

平日:9:00~17:00 定休日:土・日・祝

0120-212-902

平日:9:00~17:00 定休日:土・日・祝