企業のウェブサイトから個人のブログまで、世界中で広く利用されているWordPress。その使いやすさと拡張性の高さから絶大な人気を誇りますが、その人気ゆえに、悪意ある攻撃者の標的になりやすいという側面も持っています。「自分のサイトは大丈夫だろうか…」「セキュリティ対策って何から始めればいいの?」と不安に感じている方も多いのではないでしょうか?
しかし、WordPressサイトのセキュリティ対策は決して専門家だけのものではありません。基本的な知識を身につけ、適切な対策を講じることで、多くの脅威からあなたの貴重なサイトを守ることが可能です。
Contents
なぜWordPressのセキュリティ対策は「必須」なのか?
「WordPressのセキュリティ対策が重要だ」とはよく聞くけれど、具体的にどうしてそこまで言われるのでしょうか? まずは、セキュリティ対策が単なる「推奨」ではなく、サイト運営者にとって「必須」である理由をしっかりと理解しておきましょう。主な理由は3つあります。
- 世界中で圧倒的なシェアを誇るからこそ狙われやすい
WordPressは、全世界のウェブサイトの約4割以上で使用されていると言われるほど、圧倒的なシェアを持つCMS(コンテンツ管理システム)です。このことは、WordPressの使いやすさや信頼性の証明であると同時に、悪意のある攻撃者にとっても非常に「魅力的なターゲット」であることを意味します。なぜなら、攻撃者にとっては、一つの脆弱性を見つければ、それを応用して世界中の膨大な数のWordPressサイトを攻撃できる可能性があるからです。特定のサイトを狙うというより、脆弱性のあるWordPressサイトを無差別に探し、自動化されたツールで攻撃を仕掛けるケースが後を絶ちません。「うちみたいな小さなサイトは狙われないだろう」という考えは非常に危険なのです。 - 被害を受けた際の損失・影響が甚大である
もしあなたのWordPressサイトが攻撃を受け、セキュリティが破られてしまったら、どのような被害が起こりうるでしょうか?- サイトの改ざん: トップページが書き換えられたり、不適切な画像が表示されたりして、サイトの信用が失墜します。
- マルウェア(不正プログラム)の配布: あなたのサイトが、訪問者のコンピュータにウイルスを感染させるための踏み台にされてしまう可能性があります。
- 機密情報・個人情報の漏洩: ECサイトや会員サイトの場合、顧客情報(氏名、住所、クレジットカード情報など)が盗まれ、悪用される恐れがあります。これは法的な責任問題や高額な損害賠償に発展する可能性もはらんでいます(個人情報保護法など)。
- SEO評価の低下: Googleなどの検索エンジンに「危険なサイト」と判断され、検索結果から除外されたり、警告が表示されたりする(ブラックリスト入り)ことがあります。
- サーバー資源の不正利用: あなたのサーバーが、スパムメールの大量送信や、他のサイトへの攻撃(DDoS攻撃)の踏み台として悪用される可能性があります。
- データの完全消失: 最悪の場合、サイトのデータが全て消去されてしまうこともありえます。 これらの被害は、金銭的な損失だけでなく、時間的な損失、そして何より築き上げてきた信用を一瞬で失うことにつながりかねません。
- サイト運営者としての責任
ウェブサイトを運営するということは、そのサイトの安全性に対して責任を持つということです。レンタルサーバー会社も一定のセキュリティ対策は提供していますが、WordPress本体やプラグイン、テーマの管理、そしてサイトの内容に関するセキュリティは、基本的にサイト運営者自身の責任範囲となります。対策を怠った結果、訪問者や顧客に被害を与えてしまった場合、「知らなかった」では済まされない社会的・法的な責任を問われる可能性もあるのです。
これらの理由から、WordPressのセキュリティ対策は、サイトを立ち上げる際の初期設定だけでなく、運営を続ける限り、継続的に取り組むべき「必須事項」であると言えます。
あなたのサイトも標的に?よくある脆弱性と攻撃手口
WordPressサイトが実際にどのような手口で攻撃を受けるのかを知っておくことは、効果的な対策を講じる上で非常に重要です。ここでは、WordPressで特に注意すべき代表的な脆弱性(セキュリティ上の弱点)と、それを利用した攻撃手口について解説します。
- 不正ログイン(ブルートフォース攻撃・リスト型攻撃)
これは最も古典的かつ頻繁に行われる攻撃の一つです。WordPressのログイン画面(通常はwp-login.php
)に対して、プログラムを使ってユーザー名とパスワードの組み合わせを大量に試行し、不正にログインしようとします。- ブルートフォース攻撃(総当たり攻撃): 考えられる全てのパスワードパターンを試す方法。単純ですが、パスワードが弱いと突破される可能性があります。
- パスワードリスト攻撃: 他のサービスから流出したユーザー名とパスワードのリストを使い、WordPressサイトへのログインを試みる方法。複数のサービスで同じパスワードを使い回していると、この攻撃の被害に遭いやすくなります。 管理者権限でログインされてしまうと、サイトのコンテンツ改ざん、不正なコードの埋め込み、ユーザー情報の窃取など、あらゆる操作が可能になってしまいます。
- ソフトウェアの脆弱性を突いた攻撃
WordPress本体、使用しているテーマ、そして特にプラグインには、開発者の意図しないセキュリティ上の欠陥(脆弱性)が見つかることがあります。攻撃者は、これらの脆弱性を悪用して、サイトに侵入したり、不正な操作を行ったりします。- SQLインジェクション: データベースへの命令文(SQL)に不正な文字列を注入し、データベース内の情報を盗んだり、改ざんしたりする攻撃。
- クロスサイトスクリプティング(XSS): サイトの入力フォームなどに悪意のあるスクリプトを埋め込み、そのページを閲覧した他のユーザーのブラウザ上で実行させ、個人情報(クッキーなど)を盗む攻撃。
- ファイルインクルード: 外部から不正なファイルを読み込ませて実行させる攻撃。 これらの脆弱性は、ソフトウェアのバージョンアップ(アップデート)によって修正されることがほとんどです。そのため、WordPress本体、テーマ、プラグインを常に最新の状態に保つことが、この種の攻撃に対する最も基本的な防御策となります。セキュリティベンダーのレポート(Sucuri社など)によると、WordPressサイトがハッキングされる原因の多くは、ソフトウェアが古いまま放置されていることにあると指摘されています。
- マルウェア(不正プログラム)の感染・サイト改ざん
上記の不正ログインやソフトウェアの脆弱性を利用してサイトに侵入した攻撃者は、サイト内にマルウェアを仕込むことがあります。これにより、サイトが以下のような状態になることがあります。- 訪問者を不正なサイトへ誘導(リダイレクト)する。
- サイト上に、意図しない広告やスパムリンクが表示される。
- サイトのファイルが改ざんされ、正常に表示されなくなる(Defacement)。
- サイトがフィッシング詐欺(偽のログインページなど)に利用される。
これらの脅威は、単独で発生することもあれば、組み合わせて行われることもあります。どのような攻撃手口があるかを知り、それぞれの対策を講じていくことが重要です。
まずはここから!WordPressセキュリティの基本対策

WordPressのセキュリティ対策と聞くと、難しく感じるかもしれませんが、まずは基本的な対策をしっかりと行うことが非常に重要です。ここでは、初心者の方でも比較的簡単に実施でき、かつ効果の高い基本的な対策を7つご紹介します。これらを実践するだけでも、サイトの安全性は格段に向上します。
- 対策①:【超重要】WordPress本体・テーマ・プラグインを常に最新に保つ
これは最も基本的かつ効果的な対策です。WordPress本体、利用しているテーマ、そしてインストールしている全てのプラグインには、機能追加だけでなく、セキュリティ上の問題点(脆弱性)を修正するためのアップデートが提供されます。古いバージョンのまま放置することは、攻撃者に「どうぞ侵入してください」とドアを開けているようなものです。- 確認方法: WordPressのダッシュボードにログインし、「更新」メニューを確認します。利用可能なアップデートがあれば通知が表示されます。
- 実行方法: 基本的にはボタンをクリックするだけでアップデートできます。可能であれば、自動更新機能を有効にしておくことも検討しましょう。ただし、アップデート前にバックアップを取ることを強く推奨します(後述)。
- 対策②:推測されにくい強力なパスワードを設定・管理する
不正ログインを防ぐためには、推測されにくい強力なパスワードを設定することが不可欠です。- 強力なパスワードの条件:
- 長さ: 最低でも12文字以上、できれば16文字以上。
- 複雑さ: 大文字、小文字、数字、記号を組み合わせる。
- 独自性: 他のサービスで使っているパスワードを使い回さない。辞書にある単語や個人情報(名前、誕生日など)を含まない。
- 管理方法: 複雑なパスワードを覚えておくのは大変なので、パスワード管理ツール(例: 1Password, Bitwarden)の利用を検討しましょう。
- 強力なパスワードの条件:
- 対策③:ユーザー権限(ロール)を適切に設定・見直す
WordPressには、「管理者」「編集者」「投稿者」などのユーザー権限(役割)があります。各ユーザーには、必要最小限の権限だけを与えるようにしましょう(Principle of Least Privilege: 最小権限の原則)。例えば、ブログ記事を書くだけのユーザーに「管理者」権限を与える必要はありません。「管理者」権限を持つアカウントは、信頼できる最小限の人数に絞りましょう。定期的にユーザーリストを確認し、不要なアカウントは削除します。 - 対策④:信頼できるレンタルサーバー・ホスティング会社を選ぶ
WordPressサイトを設置する土台となるサーバー環境のセキュリティも重要です。安さだけで選ばず、以下の点を確認しましょう。- サーバーレベルでのファイアウォールや不正侵入検知システム(IDS/IPS)の有無。
- WAF(Web Application Firewall)の提供有無。
- 最新のPHPバージョンへの対応状況。
- 自動バックアップ機能の提供。
- サポート体制の充実度。
- 対策⑤:サイト全体をSSL化(HTTPS)する
SSL化(HTTPS化)は、ウェブサイトと訪問者のブラウザ間の通信を暗号化する仕組みです。これにより、ログイン情報やお問い合わせフォームに入力された情報が、第三者に盗み見られるリスクを低減できます。現在は、無料で利用できるSSL証明書(Let’s Encryptなど)も普及しており、多くのレンタルサーバーで簡単に設定できます。HTTPS化は、セキュリティ向上だけでなく、SEO評価やサイトの信頼性向上にもつながるため、必須の設定と言えます。 - 対策⑥:不要なテーマやプラグインは削除する
現在使用していないテーマやプラグインは、たとえ無効化していても、脆弱性が存在すれば攻撃の足がかりになる可能性があります。不要になったものは、完全に削除しておきましょう。インストールしているテーマやプラグインは、必要最小限に絞るのがセキュリティの基本です。 - 対策⑦:PHPのバージョンを最新安定版に更新する
WordPressは、PHPというプログラミング言語で動作しています。PHP自体にもバージョンがあり、古いバージョンにはセキュリティ上の問題が含まれていることがあります。利用しているレンタルサーバーが提供するPHPのバージョンを確認し、WordPressが推奨する最新の安定版を利用するようにしましょう。バージョン変更はサイトの動作に影響を与える可能性があるので、事前にバックアップを取り、テスト環境で確認することをお勧めします。
これらの基本対策は、特別な専門知識がなくても実践できるものがほとんどです。まずはここから着手し、WordPressサイトの安全性を高めましょう。
不正ログインをブロック!ログインセキュリティ強化策
WordPressサイトへの攻撃の中でも、特に多いのがログイン画面を狙った不正ログインです。管理者権限を奪われてしまうと、サイトが完全に掌握されてしまうため、ログイン周りのセキュリティ強化は非常に重要です。ここでは、ブルートフォース攻撃などの不正ログイン試行を効果的にブロックするための具体的な対策を5つご紹介します。
- 対策⑧:ログイン試行回数に制限を設ける
ブルートフォース攻撃は、短時間に大量のパスワード試行を行います。そこで、一定回数以上ログインに失敗したIPアドレスからのアクセスを、一定時間ブロック(ロックアウト)する仕組みを導入します。これにより、総当たり的なパスワード試行を困難にすることができます。- 実装方法: 「Limit Login Attempts Reloaded」のような専用プラグインを導入するか、後述する統合セキュリティプラグイン(Wordfenceなど)に含まれる機能を利用します。設定で、許容する試行回数やロックアウト時間を調整できます。
- 対策⑨:2段階認証(2FA)を導入する
2段階認証は、通常のパスワードに加えて、もう一つの認証要素(通常はスマートフォンアプリで生成される一時的なコードなど)を要求する仕組みです。「知識情報(パスワード)」と「所持情報(スマートフォン)」の2つの要素で認証するため、たとえパスワードが漏洩したとしても、不正ログインを防ぐことができます。これは非常に強力なセキュリティ対策であり、管理者アカウントには強く推奨されます。- 実装方法: 「Wordfence Login Security」(Wordfenceの一部)や「Google Authenticator」連携プラグインなどを利用します。設定後、ログイン時にパスワード入力に加えて、認証アプリ(Google Authenticator, Authyなど)に表示されるコードの入力が必要になります。
- 対策⑩:ログインページのURLを変更する
WordPressのデフォルトのログインページURLはwp-login.php
または/wp-admin/
です。これは広く知られているため、攻撃者はこのURLを狙って自動的な攻撃を仕掛けてきます。このログインページのURLを、自分だけが知っている独自のURLに変更することで、ボットによる自動的なアクセスを大幅に減らすことができます。- 実装方法: 「WPS Hide Login」のような専用プラグインを使えば、簡単にログインURLを変更できます。ただし、変更したURLを忘れないように、しっかりと管理する必要があります。
- 対策⑪:「admin」など安易なユーザー名を使わない
WordPressをインストールした際のデフォルトの管理者ユーザー名は、かつては「admin」であることが多く、現在でも安易に「admin」を使用しているケースが見られます。これは攻撃者にとって格好の標的となります。ユーザー名はログインに必要な情報の一部なので、推測されにくい独自のユーザー名を設定しましょう。もし「admin」ユーザーが存在する場合は、新たに管理者権限を持つ別ユーザーを作成し、「admin」ユーザーは削除(コンテンツは新ユーザーに引き継ぐ)することをお勧めします。 - 対策⑫:reCAPTCHAなどを導入しボットからのアクセスを防ぐ
ログインフォームやコメントフォームに、Googleが提供する「reCAPTCHA」のような仕組みを導入することで、アクセスしてきているのが人間なのか、自動化されたプログラム(ボット)なのかを判別し、ボットによる不正な試行を防ぐことができます。「私はロボットではありません」チェックボックスや、画像選択パズルなどが一般的です。- 実装方法: 「Advanced Google reCAPTCHA」のようなプラグインを利用して導入できます。フォームの種類(ログイン、コメント、パスワードリセットなど)ごとに設定可能です。
これらの対策を組み合わせることで、WordPressサイトの入り口であるログイン画面の防御力を大幅に高めることができます。特に、2段階認証は効果が高いため、積極的に導入を検討しましょう。
穴を作らない!プラグインとテーマのセキュリティ対策

WordPressの魅力の一つは、豊富なプラグインとテーマによって、自由に機能を拡張したりデザインを変更したりできることです。しかし、その一方で、プラグインやテーマがセキュリティ上の「穴」となるケースが非常に多いのも事実です。WordPressサイトのハッキング原因として、プラグインやテーマの脆弱性が悪用される事例が後を絶ちません。ここでは、プラグインとテーマに関するセキュリティ対策のポイントを解説します。
- 対策⑬:公式ディレクトリや信頼できる開発元から入手する
プラグインやテーマを入手する際は、必ずWordPressの公式ディレクトリ(wordpress.org)か、評判の良い、信頼できる開発元(有名なテーマベンダーやプラグイン開発会社など)からにしましょう。インターネット上で配布されている非公式なテーマやプラグイン、特に「有料テーマ・プラグインの無料版」と謳われているもの(いわゆるNulled版)には、マルウェアが仕込まれていたり、悪意のあるコードが埋め込まれていたりする危険性が非常に高いです。安易に利用するのは絶対に避けましょう。 - 対策⑭:脆弱性情報を定期的にチェックする習慣をつける
残念ながら、公式ディレクトリや信頼できる開発元のプラグイン・テーマであっても、後から脆弱性が発見されることはあります。利用しているプラグインやテーマに関する脆弱性情報が公開されていないか、定期的にチェックする習慣をつけましょう。- 情報源:
- WordPress公式ニュース (日本語)
- JVN (Japan Vulnerability Notes): 日本語での脆弱性情報データベース
- WPScan Vulnerability Database: WordPress専門の脆弱性データベース(英語)
- セキュリティプラグインの通知機能 もし利用しているものに脆弱性が見つかった場合は、開発元から修正アップデートが提供されているかを確認し、速やかに適用するか、一時的に停止・削除するなどの対応が必要です。
- 情報源:
- 対策⑮:インストール数・評価・最終更新日を確認する
新しいプラグインやテーマを導入する前に、以下の点を確認しましょう。これらは、そのプラグインやテーマが信頼でき、活発にメンテナンスされているかの指標となります。- 有効インストール数: 多くの人に利用されているか?(一概には言えませんが、極端に少ない場合は注意)
- ユーザー評価(レビュー): 評価は高いか? 不具合やセキュリティに関する報告はないか?
- 最終更新日: 定期的に更新されているか? 長期間更新されていないものは、最新のWordPressバージョンやPHPバージョンとの互換性問題や、未修正の脆弱性が存在する可能性があります。
- 対応するWordPressバージョン: 利用しているWordPressのバージョンに対応しているか?
- 開発元のサポート: フォーラムでの質問への回答状況など、サポート体制はしっかりしているか?
追加の重要ポイント
- 常に最新バージョンに更新する: 基本対策でも触れましたが、プラグイン・テーマの更新はセキュリティ維持の生命線です。脆弱性が修正されたアップデートが公開されたら、できるだけ速やかに適用しましょう。
- 不要なものは削除する: 使っていないプラグインやテーマは、脆弱性のリスクを抱えるだけなので、無効化するだけでなく、完全に削除しましょう。サイトに必要な機能は、できるだけ少ない数の信頼できるプラグインで実現するのが理想です。
プラグインとテーマはWordPressの便利な機能ですが、同時にセキュリティリスクの入り口にもなり得ます。慎重な選定と適切な管理を心がけることが、サイト全体の安全性を保つ上で極めて重要です。
改ざん・マルウェア感染を防ぎ、検知するための対策
基本的な対策やログイン・プラグイン周りの対策を施しても、残念ながら100%攻撃を防げるとは限りません。そこで重要になるのが、万が一不正な侵入を許してしまった場合に、サイトの改ざんやマルウェア(悪意のあるプログラム)の感染をいち早く検知し、被害を最小限に食い止めるための対策です。ここでは、防御と検知の両面からのアプローチをご紹介します。
- 対策⑯:セキュリティ対策プラグインを導入・活用する
WordPressには、様々なセキュリティ機能をパッケージ化した、高機能なセキュリティ対策プラグインが存在します。これらのプラグインを導入することで、複数の対策を効率的に実施・管理できます。代表的なものとしては以下のようなものがあります。- Wordfence Security: ファイアウォール(WAF)、マルウェアスキャン、ログインセキュリティ強化、ファイル変更検知、ブルートフォース攻撃防御など、多機能で人気のプラグイン。無料版でも多くの機能が利用可能です。
- SiteGuard WP Plugin: 日本語に完全対応しており、ログインページの変更、画像認証(CAPTCHA)、ログイン試行回数制限、不正なファイルアクセス検知など、特に不正ログイン対策や改ざん検知に重点を置いた国産プラグイン。初心者にも比較的扱いやすいです。
- Sucuri Security: マルウェアスキャン、ファイル整合性チェック、セキュリティ強化推奨(Hardening)、セキュリティアクティビティ監査ログなどの機能を提供。同社のWAFサービスとの連携も可能です。 これらのプラグインは、それぞれ特徴や得意分野が異なります。自分のサイトの状況やスキルレベルに合わせて、適切なものを一つ選んで導入・設定しましょう(複数導入すると競合する可能性があるため注意)。
- 対策⑰:定期的なマルウェアスキャンとファイル変更検知を行う
セキュリティプラグインの重要な機能の一つが、マルウェアスキャンとファイル変更検知です。- マルウェアスキャン: サイト内のファイルやデータベースに、既知のマルウェアや不正なコードが含まれていないかをチェックします。定期的に(例えば週に一度など)スキャンを実行するように設定しましょう。不審なファイルが見つかった場合は、プラグインの指示に従って対処します(隔離、削除など。ただし、誤検知の可能性もあるため慎重に)。
- ファイル変更検知(ファイル整合性チェック): WordPressのコアファイルや、テーマ・プラグインのファイルが、元の状態から変更されていないかをチェックします。もし意図しない変更が検知された場合は、改ざんの可能性が高いと考えられます。Wordfenceなどは、変更されたファイルを元のバージョンと比較したり、修復したりする機能も持っています。
防御策としての追加ポイント
- WAF (Web Application Firewall) の活用: 基本対策や推奨策でも触れますが、WAFはサイトに到達する前の段階で不正なアクセスや攻撃パターンを検知し、ブロックしてくれる防御壁です。レンタルサーバーが提供するWAF機能や、Cloudflareのような外部CDNサービス、あるいはセキュリティプラグインのWAF機能を利用することを検討しましょう。
- ファイル編集機能の無効化: WordPressのダッシュボードからテーマやプラグインのファイルを直接編集できる機能は便利ですが、万が一管理者アカウントが乗っ取られた場合に、悪意のあるコードを簡単に埋め込まれてしまうリスクがあります。
wp-config.php
ファイルにdefine('DISALLOW_FILE_EDIT', true);
と追記することで、この機能を無効化できます。 - ファイルパーミッション(権限)の適切な設定: サーバー上のファイルやディレクトリに対する書き込み権限などを適切に設定(制限)することで、不正なファイルのアップロードや改ざんを防ぐ効果があります。一般的には、ファイルは「644」、ディレクトリは「755」が推奨されますが、サーバー環境によって異なる場合もあるため、レンタルサーバーのドキュメントを確認しましょう。
これらの検知・防御策を組み合わせることで、たとえ攻撃を受けたとしても、被害にいち早く気づき、迅速に対応することが可能になります。
万が一に備える!WordPressの確実なバックアップ戦略

どれだけセキュリティ対策を万全に行ったとしても、予期せぬトラブル(サーバー障害、操作ミス、そしてハッキング被害など)によって、ウェブサイトのデータが失われたり、アクセスできなくなったりする可能性はゼロではありません。そんな万が一の事態に備えるための「最終防衛ライン」となるのが、サイトデータのバックアップです。ここでは、WordPressサイトの確実なバックアップ戦略について解説します。
- なぜバックアップが絶対に必要なのか?
バックアップがあれば、以下のような状況からサイトを元の状態に復旧させることが可能です。- ハッキング・改ざん被害: 不正アクセスによりサイトが改ざんされたり、マルウェアに感染したりした場合でも、クリーンな状態のバックアップから復元できます。
- アップデートの失敗: WordPress本体、テーマ、プラグインのアップデート中にエラーが発生し、サイトが表示されなくなった場合。
- 操作ミス: 誤って重要なファイルやデータを削除してしまった場合。
- サーバー障害: 利用しているレンタルサーバーでハードウェア故障などの障害が発生した場合。 バックアップがないと、これらのトラブル発生時にサイトを復旧できず、最悪の場合、時間と労力をかけて作り上げたサイトを一瞬で失うことになりかねません。
- 何をバックアップするべきか?
WordPressサイトのバックアップには、大きく分けて二つの要素が必要です。- ファイル一式: WordPress本体のファイル、テーマファイル、プラグインファイル、そしてアップロードした画像などのメディアファイル (
wp-content
ディレクトリ全体が重要)。 - データベース: 投稿記事、固定ページ、コメント、ユーザー情報、各種設定など、サイトのコンテンツや設定情報のほとんどが格納されています。 この両方が揃っていないと、完全なサイト復旧はできません。
- ファイル一式: WordPress本体のファイル、テーマファイル、プラグインファイル、そしてアップロードした画像などのメディアファイル (
- どのくらいの頻度でバックアップを取るべきか?
バックアップの頻度は、サイトの更新頻度によって異なります。- 毎日更新するブログやニュースサイト、ECサイトなど: 少なくとも1日1回。
- 週に数回更新するサイト: 週に1回程度。
- ほとんど更新しないコーポレートサイトなど: 月に1回程度。 ただし、頻度が低いサイトでも、WordPress本体やプラグインのアップデート前など、サイトに大きな変更を加える前には必ずバックアップを取るようにしましょう。
- どうやってバックアップを取るか?
- レンタルサーバーのバックアップ機能: 多くのレンタルサーバーが自動バックアップ機能を提供しています。手軽ですが、保存期間や復元の自由度に制限がある場合も。内容をよく確認し、これだけに頼らない方が安全です。
- バックアップ用プラグイン: WordPressのプラグインを使えば、自動で定期的にバックアップを取り、指定した場所に保存することができます。「UpdraftPlus」や「BackWPup」などが有名で、多くのユーザーに利用されています。スケジュール設定や、Dropbox、Google Drive、Amazon S3などの外部クラウドストレージへの自動保存機能があり、非常に便利です。
- 手動バックアップ: FTPソフトでファイルをダウンロードし、phpMyAdminなどでデータベースをエクスポートする方法。手間はかかりますが、仕組みを理解する上では役立ちます。
- バックアップデータはどこに保存するか?
最も重要なのは、ウェブサーバーと同じ場所にバックアップデータを置かないことです。サーバー自体に障害が発生したり、サーバーごとハッキングされたりした場合、バックアップデータも一緒に失われてしまいます。必ず、外部の安全な場所(利用しているPC、外付けHDD、DropboxやGoogle Driveのようなクラウドストレージサービスなど)に保存しましょう。できれば複数箇所に保存(例: クラウド + ローカルPC)するのが理想的です。 - バックアップからの復元(リストア)テストを行う
バックアップは、いざという時に確実に復元できなければ意味がありません。定期的に(例えば半年に一度など)、バックアップデータを使って実際にサイトを復元できるかどうかをテストしておくことを強くお勧めします。これにより、バックアッププロセスに問題がないか、復元手順を把握しているかを確認できます。
確実なバックアップ体制を構築しておくことは、安心してWordPressサイトを運営するための、何にも代えがたい保険となります。
【推奨】さらに防御力を高めるための施策
基本的な対策や各箇所の強化策、そしてバックアップ戦略を整えた上で、さらにWordPressサイトのセキュリティレベルを引き上げたい、より盤石な体制を築きたいと考える方向けに、推奨される追加の施策をいくつかご紹介します。これらは少し技術的な知識が必要な場合もありますが、導入することで防御力を一層高めることが期待できます。
- WAF(Web Application Firewall)の導入・活用
WAFは、ウェブサイトと訪問者の間に立ち、不正な通信や攻撃パターン(SQLインジェクション、XSSなど)を検知してブロックする「防火壁」の役割を果たします。WordPress本体に攻撃が到達する前に防御できるため、非常に効果的な対策です。- 種類:
- サーバー提供型: レンタルサーバーがオプションとして提供している場合。設定が簡単なことが多いです。
- クラウド型 (CDN型): CloudflareやAWS WAF、Sucuri Firewallなど。高機能でDDoS攻撃対策なども含まれることが多いですが、別途契約と設定が必要です。Cloudflareには無料プランもあります。
- ソフトウェア型 (プラグイン型): Wordfenceなどのセキュリティプラグインに含まれるWAF機能。手軽に導入できますが、効果はサーバー型やクラウド型に劣る場合があります。 予算やサイトの規模、求める機能に応じて最適なタイプを選びましょう。
- 種類:
- .htaccessやwp-config.phpファイルの保護・強化
これらのファイルはWordPressの設定に関する重要な情報を含んでおり、適切に保護することが重要です。.htaccess
でのアクセス制御: 特定のIPアドレス以外からのwp-admin
ディレクトリへのアクセスを制限したり、wp-config.php
ファイルへの直接アクセスを拒否したりする設定を追加できます(記述方法はサーバー環境により異なります)。wp-config.php
の強化:- セキュリティキー(SALT)の定期的な変更: ログインセッションなどの安全性を高めます。ジェネレーターで生成し、置き換えます。
- ファイルの移動:
wp-config.php
を一つ上のディレクトリ階層に移動させることで、アクセスされにくくする(一部のサーバー環境では不可)。 - パーミッションの厳格化: ファイルの書き込み権限を制限する(例: 400 や 444)。
- データベースのテーブル接頭辞(プレフィックス)の変更
WordPressのデータベーステーブル名は、デフォルトではwp_
から始まります。これは広く知られているため、SQLインジェクション攻撃などでテーブル名を推測されやすくなります。WordPressインストール時に、この接頭辞をwp_
以外のランダムな文字列(例:wp7gz3_
)に変更することで、セキュリティをわずかに向上させることができます。既存サイトで変更するのは少し手間がかかるため、新規インストール時に行うのがおすすめです。 - XML-RPC機能の無効化(不要な場合)
XML-RPCは、外部のアプリケーション(スマホアプリなど)からWordPressを操作するための機能ですが、ブルートフォース攻撃やDDoS攻撃の踏み台として悪用されることがあります。もしこの機能を利用していないのであれば、無効化することを検討しましょう。セキュリティプラグインで無効化するか、.htaccess
に追記することで対応できます。 - ファイル編集機能の無効化(再掲)
ダッシュボードからのテーマ・プラグイン編集機能を無効化すること(wp-config.php
にdefine('DISALLOW_FILE_EDIT', true);
を追記)は、基本対策としても推奨されますが、セキュリティ強化の観点からも改めて重要です。
これらの施策は、サイトの状況や運営者のスキルレベルに応じて、必要であれば導入を検討してみてください。一つ一つは小さな改善かもしれませんが、組み合わせることで多層的な防御を構築することができます。
もしハッキングされたら?被害発覚時の初期対応フロー

どれだけ注意深くセキュリティ対策を施していても、残念ながらハッキング被害に遭ってしまう可能性はゼロではありません。万が一、自身のWordPressサイトがハッキングされた、あるいはその疑いがある場合に、パニックにならず冷静に対応するための初期手順を知っておくことは非常に重要です。迅速かつ適切な対応が、被害の拡大を防ぎ、早期復旧につながります。
ステップ1:慌てず状況を確認する
まず、落ち着いて状況を把握しましょう。どのような被害が発生していますか?
- サイトの表示がおかしい(改ざん、見慣れないコンテンツの表示)
- 不審なファイルがサーバー上にアップロードされている
- 管理画面にログインできない
- Googleなどの検索結果に「このサイトは第三者によってハッキングされている可能性があります」といった警告が表示される
- サイトからスパムメールが大量に送信されている形跡がある
- サーバー会社から不正行為に関する警告を受けた 具体的な症状をメモしておくと、後の対応がスムーズになります。
ステップ2:サイトを一時的にオフラインにする
被害の拡大を防ぎ、訪問者がマルウェアに感染したり、フィッシング詐欺に遭ったりするリスクを避けるため、可能であればサイトを一時的にオフライン(メンテナンスモード)にすることを検討します。.htaccess
を編集するか、専用のプラグイン(事前に用意しておくと良い)を使います。
ステップ3:レンタルサーバー会社に連絡・相談する
利用しているレンタルサーバー会社に、ハッキングされた可能性があることを速やかに連絡し、状況を説明します。サーバー会社側で不審なアクセスログや、原因究明の手がかりとなる情報を持っている場合があります。また、対応についてアドバイスをもらえたり、場合によっては復旧作業を支援してもらえたりすることもあります。
ステップ4:パスワードを全て変更する
ハッキングされたということは、何らかの方法で認証情報が漏洩した可能性があります。WordPressの管理者パスワードだけでなく、全ユーザーのパスワード、データベースのパスワード、サーバーのコントロールパネルのパスワード、FTP/SFTPアカウントのパスワードなど、関連する全てのパスワードを、強力でユニークなものに変更しましょう。
ステップ5:バックアップデータからの復旧を試みる
最も確実で推奨される復旧方法は、ハッキングされる前の「クリーンな状態」のバックアップデータからサイト全体(ファイルとデータベース)を復元(リストア)することです。そのためにも、日頃からの確実なバックアップが重要になります。復元後も、原因となった脆弱性が残っている可能性があるため、次のステップ(原因調査と対策)が必要です。
ステップ6:マルウェアスキャンと不正ファイルの除去
バックアップからの復元が難しい場合や、バックアップ自体が感染している可能性がある場合は、サイト内のファイルをスキャンし、マルウェアや不正なコード、不審なファイルを特定して除去する必要があります。セキュリティプラグインのスキャン機能や、専門のスキャンツールを利用します。WordPressコアファイルの破損が疑われる場合は、公式からダウンロードしたクリーンなファイルで上書きすることも有効です。この作業は専門知識が必要な場合が多く、難しいと感じたら専門業者への依頼も検討しましょう。
ステップ7:原因を調査し、脆弱性を塞ぐ
なぜハッキングされたのか、侵入経路(古いプラグインの脆弱性?弱いパスワード?)を特定し、同じ手口で再度攻撃されないように、原因となった脆弱性を塞ぐ必要があります。サーバーのアクセスログを確認したり、セキュリティプラグインのレポートを分析したりします。
ステップ8:事後対応
サイトが復旧し、安全が確認されたら、必要に応じてGoogle Search Consoleで再審査をリクエストしたり(ブラックリストに載った場合)、もし個人情報漏洩の恐れがある場合は、関連法規に従い関係各所への報告や顧客への通知を行います。
ハッキング被害からの復旧は、精神的にも時間的にも大きな負担となります。だからこそ、日頃からの予防策と、万が一の際の対応手順を知っておくことが大切なのです。もし自力での対応が困難だと感じた場合は、無理せずWordPressのセキュリティに詳しい専門家や専門業者に相談することも検討しましょう。
まとめ:継続的な対策でWordPressサイトを安全に運営しよう
この記事では、WordPressサイトのセキュリティ対策について、その重要性から、よくある脅威、具体的な対策(基本、ログイン、プラグイン・テーマ、改ざん・マルウェア、バックアップ)、さらに応用的な施策、そして万が一の際の対応フローまで、幅広く解説してきました。
WordPressのセキュリティ対策は、サイト運営者の責任であり、サイトの価値と信頼を守るための投資でもあります。この記事を参考に、まずはできることから一つずつ対策を始め、安全で快適なWordPressサイト運営を目指しましょう。継続的な努力が、あなたの貴重なウェブサイトを脅威から守る最も確実な方法なのです。