🔒 WordPressセキュリティ対策完全ガイド
WordPressは世界中で使われているため、サイバー攻撃の標的になりやすいCMSです。しかし、適切なセキュリティ対策を施すことで、安全にサイトを運営できます。このページでは、初心者でも実践できるセキュリティ対策を詳しく解説します。
📚 より詳しいセキュリティ対策をお探しの方へ
このページは機能解説として基本的な対策を紹介しています。
実践的な手順・プラグイン比較・復旧手順など、より詳細なセキュリティ対策は
→ WordPressセキュリティ完全ガイド(全10ページ)をご覧ください。
このページは機能解説として基本的な対策を紹介しています。
実践的な手順・プラグイン比較・復旧手順など、より詳細なセキュリティ対策は
→ WordPressセキュリティ完全ガイド(全10ページ)をご覧ください。
WordPressが狙われる理由
WordPressは世界中のWebサイトの約43%で使用されており、その普及率の高さゆえに攻撃者の標的になりやすい現状があります。
主な攻撃の種類
- ブルートフォース攻撃:パスワードを総当たりで試す攻撃
- SQLインジェクション:データベースに不正なコードを挿入する攻撃
- クロスサイトスクリプティング(XSS):悪意のあるスクリプトを埋め込む攻撃
- マルウェア感染:ウイルスやスパイウェアを仕込む攻撃
- DDoS攻撃:大量のアクセスでサーバーをダウンさせる攻撃
被害例:セキュリティ対策が不十分なサイトは、サイト改ざん、顧客情報の流出、スパムメール送信の踏み台、検索結果からの除外などの被害を受ける可能性があります。
基本的なセキュリティ対策
1. 強固なパスワードの設定
パスワードは最も基本的で重要なセキュリティ対策です。
強いパスワードの条件
- 12文字以上の長さ
- 英大文字・小文字・数字・記号を組み合わせる
- 辞書に載っている単語を使わない
- 個人情報(誕生日、名前など)を含めない
- サイトごとに異なるパスワードを使う
パスワード例
- ❌ 弱いパスワード:「password123」「tanaka2024」
- ✅ 強いパスワード:「K9$mP2@vL7#qX4」(ランダムな文字列)
推奨:パスワード管理ツール(1Password、LastPassなど)を使うと、複雑なパスワードを安全に管理できます。
2. ユーザー名の変更
デフォルトの「admin」というユーザー名は攻撃者に推測されやすいため、変更が必要です。
ユーザー名変更手順
- 新しいユーザーアカウントを作成(管理者権限)
- 新しいアカウントでログイン
- 古い「admin」アカウントを削除
- 投稿の所有者を新しいアカウントに移行
注意:ユーザー名変更後は、必ず新しいユーザー名でログインできることを確認してから古いアカウントを削除してください。
3. WordPress本体・テーマ・プラグインの更新
古いバージョンには既知の脆弱性が存在するため、常に最新版に更新することが重要です。
更新の重要性
- セキュリティパッチの適用:発見された脆弱性が修正される
- 新機能の追加:パフォーマンス向上や新機能が利用可能に
- 互換性の維持:他のプラグインやテーマとの互換性を保つ
更新前の注意:更新前には必ずバックアップを取りましょう。まれに更新によって不具合が発生することがあります。
4. 不要なプラグインとテーマの削除
使っていないプラグインやテーマは、セキュリティリスクとなります。
削除すべきもの
- 有効化していないプラグイン
- 使用していないテーマ(現在のテーマ以外)
- 長期間更新されていないプラグイン
- 信頼できない開発元のプラグイン
セキュリティプラグインの導入
セキュリティプラグインを使うことで、専門知識がなくても高度なセキュリティ対策を実施できます。
主なセキュリティプラグイン
- SiteGuard WP Plugin - 日本製で日本語対応、初心者向け
- Wordfence Security - ファイアウォール・マルウェアスキャン搭載
- iThemes Security - 30以上のセキュリティ対策を提供
- Sucuri Security - セキュリティスキャン・ブラックリスト監視
SSL化(HTTPS対応)
SSL証明書を導入してHTTPS化することで、通信を暗号化し、第三者による盗聴や改ざんを防ぎます。
SSL化のメリット
- 通信の暗号化:ログイン情報やフォーム入力内容を保護
- SEO効果:GoogleがHTTPSを評価要因の一つとしている
- 信頼性向上:ブラウザに鍵マークが表示され、訪問者に安心感を与える
- 必須化の流れ:主要ブラウザがHTTPサイトに警告を表示
SSL化の手順
- レンタルサーバーでSSL証明書を取得(多くは無料提供)
- サーバー側でSSL設定を有効化
- WordPress管理画面で「設定」→「一般」を開く
- 「WordPressアドレス」と「サイトアドレス」を「https://」に変更
- 「.htaccess」でHTTPからHTTPSへリダイレクト設定
関連ページ:詳しくはSSL証明書とHTTPS化をご覧ください。
バックアップの重要性
万が一攻撃を受けた場合でも、定期的なバックアップがあれば被害を最小限に抑えられます。
バックアップの対象
- データベース:記事、コメント、設定などのデータ
- ファイル:テーマ、プラグイン、画像などのファイル
バックアップの頻度
| サイトの更新頻度 | 推奨バックアップ頻度 |
|---|---|
| 毎日更新 | 毎日 |
| 週に数回更新 | 週1回 |
| 月に数回更新 | 月1回 |
| ほとんど更新しない | 月1回(最低限) |
関連ページ:詳しくはバックアップの自動化をご覧ください。
ファイル・ディレクトリのパーミッション設定
適切なパーミッション(アクセス権限)設定により、不正なファイル改ざんを防ぎます。
推奨パーミッション
| 対象 | 推奨値 | 説明 |
|---|---|---|
| ディレクトリ | 755 | 所有者のみ書き込み可能 |
| ファイル | 644 | 所有者のみ書き込み可能 |
| wp-config.php | 400 または 440 | 読み取り専用(重要) |
注意:パーミッション設定を誤るとサイトが正常に動作しなくなることがあります。変更前にバックアップを取り、わからない場合はサーバー会社のサポートに相談しましょう。
二要素認証(2FA)の導入
パスワードに加えて、もう一つの認証要素を追加することで、セキュリティを大幅に強化できます。
二要素認証の仕組み
- 第1要素:パスワード(知識情報)
- 第2要素:スマホアプリの認証コード(所持情報)
おすすめプラグイン
- Google Authenticator:Googleの認証アプリと連携
- Two Factor Authentication:メールやアプリで認証コード送信
- Wordfence:セキュリティ機能の一部として2FAを提供
効果:二要素認証を導入すると、パスワードが漏洩しても不正ログインを防げます。特に重要なサイトでは必須の対策です。
wp-config.phpのセキュリティ強化
wp-config.phpにはデータベース接続情報など、重要な情報が含まれています。このファイルを保護することは極めて重要です。
セキュリティキーの変更
WordPressのセキュリティキーは、クッキーの暗号化に使用されます。定期的に変更することを推奨します。
変更手順
- WordPress公式のセキュリティキー生成ページにアクセス
- 生成されたキーをコピー
- FTPでwp-config.phpをダウンロード
- 既存のセキュリティキー部分を新しいキーで置き換え
- ファイルをアップロード
注意:セキュリティキーを変更すると、すべてのユーザーがログアウトされます。
wp-config.phpへのアクセス制限
.htaccessファイルに以下を追加することで、wp-config.phpへの直接アクセスを禁止できます。
推奨:サーバーの設定やプラグインでwp-config.phpを保護しましょう。
定期的なセキュリティチェック
月次チェックリスト
- WordPress本体、テーマ、プラグインの更新確認
- 不要なユーザーアカウントの削除
- バックアップの正常性確認
- アクセスログのチェック(不審なログインはないか)
- サーバー容量の確認
年次チェックリスト
- すべてのパスワード変更
- セキュリティキーの再生成
- 使用していないプラグイン・テーマの削除
- SSL証明書の有効期限確認
- セキュリティプラグインの設定見直し
もし攻撃を受けてしまったら
初動対応
- サイトを一時的に閉鎖:被害拡大を防ぐ
- バックアップから復元:最新のクリーンなバックアップに戻す
- 全パスワード変更:WordPress、FTP、データベースなど
- マルウェアスキャン:セキュリティプラグインで全ファイルをチェック
- ログ確認:どこから侵入されたかを特定
専門家への相談
自力での対応が難しい場合は、以下の専門サービスを検討しましょう。
- セキュリティ専門会社への依頼
- レンタルサーバー会社のセキュリティサポート
- WordPress保守サービスの利用
重要:個人情報や決済情報が流出した可能性がある場合は、速やかに該当ユーザーへの通知と、必要に応じて監督官庁への報告が必要です。
まとめ:セキュリティ対策チェックリスト
必須対策(全サイト)
- 強固なパスワードの設定
- ユーザー名を「admin」から変更
- WordPress・テーマ・プラグインを常に最新に保つ
- セキュリティプラグインの導入
- SSL化(HTTPS対応)
- 定期的なバックアップ
推奨対策(重要サイト)
- 二要素認証の導入
- ログインページURLの変更
- ファイルパーミッションの適切な設定
- wp-config.phpのセキュリティ強化
- 定期的なセキュリティスキャン
🔗 セキュリティ関連ページ
📚 より詳しいセキュリティ対策
- → WordPressセキュリティ完全ガイド(TOP) - 全体像・脅威の種類・対策ロードマップ
- 基本対策の詳細手順 - SSL・パスワード・2FA・パーミッション設定
- セキュリティプラグイン徹底比較 - Wordfence・SiteGuard・iThemes Security
- ログインセキュリティ強化 - URL変更・回数制限・CAPTCHA
- WAF・ファイアウォール設定 - Cloudflare・サーバーWAF
- 脆弱性対策 - プラグイン・テーマの選定基準
- マルウェアスキャン・駆除 - 検出方法・除去手順
- 監視・ログ確認 - 異常検知・アラート設定
- ハッキング被害後の復旧 - 完全復旧マニュアル
- セキュリティチェックリスト - 定期確認60項目
👨💻 開発者向けセキュリティ
- プラグイン開発者向けセキュリティ - SQL injection・XSS対策
- テーマ開発者向けセキュリティ - エスケープ・サニタイズ・Nonce