① WordPressサイトを狙う主な攻撃

WordPressは世界で最も使われているCMSであるがゆえに、自動化された攻撃プログラムの標的になりやすいという特徴があります。まずは代表的な攻撃手法を知っておきましょう。

ブルートフォース攻撃

IDとパスワードの組み合わせを機械的に総当たりで試す攻撃。ログインページへの自動アクセスの多くがこれにあたります。

SQLインジェクション

入力フォーム等を通じて不正なデータベース命令を送り込み、情報を盗んだり改ざんしたりする攻撃。

XSS(クロスサイトスクリプティング)

悪意のあるスクリプトをサイトに埋め込み、訪問者のブラウザ上で実行させる攻撃。コメント欄等が狙われます。

マルウェア設置

更新されずに放置されたプラグイン・テーマの脆弱性を突いて、不正なファイルをサーバーに設置する攻撃。詳しくはマルウェアスキャン・駆除やWordPress更新管理ガイドを参照してください。

多層防御という考え方これらの攻撃は単一の対策だけでは防ぎきれません。SSL化・強固なパスワード・WAF・定期バックアップ等、複数の対策を重ねる「多層防御」が基本的な考え方です。

② なぜSSL化が必要か

通信の盗聴・改ざんを防ぐ

SSL/TLSは、ブラウザとサーバー間の通信を暗号化する技術です。SSL化されていない(http://の)サイトでは、フォームに入力したパスワードやクレジットカード情報が、通信経路上で第三者に読み取られる可能性があります。URLが「https://」で始まっているサイトは、この暗号化が有効な状態です。

SEO・ブラウザ表示への影響

Googleはランキング要因の1つとしてSSL化を挙げており、SSL化されていないサイトはブラウザ上で「保護されていない通信」等の警告が表示されます。訪問者の信頼を得るためにも必須の対策です。証明書の種類・無料のLet's Encrypt・混在コンテンツ対策など詳しくはSSL証明書とHTTPS化の解説を参照してください。

③ なぜ強固なパスワードが必要か

ブルートフォース攻撃への耐性

短い・単純なパスワードは、総当たり攻撃によって短時間で突破されてしまいます。英数字・記号を組み合わせた12文字以上のパスワードにすることで、突破に必要な時間を現実的でないレベルまで引き伸ばせます。

使い回しの危険性

他のサービスと同じパスワードを使い回していると、その別サービスから情報が漏洩した際に、WordPressサイトも芋づる式に突破されるリスクがあります。サイトごとに異なるパスワードを設定しましょう。

さらに強化するにはパスワードだけに頼らず、ログイン試行回数制限や2要素認証を組み合わせることを推奨します。詳しくはログインセキュリティ完全強化ガイドを参照してください。

④ なぜバックアップが必要か

「予防」ではなく「回復」のための対策

ここまでの対策がすべて「攻撃を防ぐ」ためのものだったのに対し、バックアップは「万が一被害にあった場合に、被害前の状態に戻す」ための対策です。どれだけ予防策を講じても、被害を完全にゼロにすることはできないため、バックアップは対策の最後の砦となります。

ハッキング被害からの復旧の第一歩

万が一改ざん被害にあった場合、正常な状態のバックアップがあれば、原因調査と並行して迅速にサイトを復旧できます。詳しくはハッキング被害後の復旧手順およびバックアップ完全ガイドを参照してください。

⑤ なぜwp-config.phpの保護が必要か

データベース接続情報を含む最重要ファイル

wp-config.phpには、データベースのユーザー名・パスワード・秘密鍵(認証キー)など、サイトの根幹に関わる機密情報が記載されています。このファイルの中身が第三者に読み取られると、データベースに直接アクセスされる重大なリスクにつながります。

// .htaccessに追記することで直接アクセスを拒否できる設定例
<files wp-config.php>
order allow,deny
deny from all
</files>
注意多くのレンタルサーバーではwp-config.phpは公開領域の外(一段階上の階層)に自動配置され、外部から直接アクセスできない設計になっています。手動で設定を変更する場合は、必ずバックアップを取ってから作業してください。

⑥ Nonceとは何か

Nonce(ノンス)は、「Number used once」の略で、WordPressが不正なリクエストを見分けるために発行する使い捨てのトークンです。例えば、投稿削除ボタンを押した際に送信されるリクエストが「本当にその画面から送信されたものか」を検証する役割を持ちます。

CSRF対策としての役割Nonceの主な目的は、CSRF(クロスサイトリクエストフォージェリ)と呼ばれる、ユーザーの意図しない操作を第三者に実行させる攻撃を防ぐことです。プラグイン開発者向けの概念ですが、サイト運営者としても「WordPressにはこうした内部的な安全機構がある」と知っておくと、エラーメッセージ等の理解に役立ちます。

⑦ セキュリティ完全ガイド全10ページ

ここまでの「なぜ」を踏まえて、具体的な設定手順は以下の各ページで解説しています。

⑧ よくある質問(FAQ)

難しいパスワードを設定すれば、それだけで安全ですか?
パスワードは重要な対策の1つですが、それだけでは不十分です。ログイン試行回数制限・2要素認証・WAFなど、複数の対策を組み合わせる「多層防御」の考え方が基本になります。
SSL化していれば、サイトは完全に安全ですか?
SSL/TLSは通信経路の盗聴・改ざんを防ぐものであり、SQLインジェクションやブルートフォース攻撃など、通信内容そのものとは関係ない攻撃は防げません。SSL化はあくまで基本対策の1つです。
バックアップを取っていれば、ハッキングされても安心ですか?
復旧の観点では非常に重要ですが、バックアップ自体はハッキングを防ぐものではありません。バックアップは「被害後の回復手段」、他のセキュリティ対策は「被害の予防手段」と役割が異なります。両方が必要です。
↑