6行目: | 6行目: | ||
===セキュリティ=== | ===セキュリティ=== | ||
結論 | 結論 | ||
80% 以上の WordPress ハッキングは以下の 3 つの原因に集約される: | |||
1. WordPress / プラグイン / テーマを古いまま放置(50%以上) | 1. WordPress / プラグイン / テーマを古いまま放置(50%以上) | ||
2. ログインページの脆弱性(弱いパスワード・XML-RPC)(30%) | 2. ログインページの脆弱性(弱いパスワード・XML-RPC)(30%) |
2025年3月5日 (水) 17:33時点における最新版

言わずと知れたブログ/サイト系CMS。PHP製。基本的には公式マニュアルを参照。
備忘メモ
セキュリティ
結論 80% 以上の WordPress ハッキングは以下の 3 つの原因に集約される: 1. WordPress / プラグイン / テーマを古いまま放置(50%以上) 2. ログインページの脆弱性(弱いパスワード・XML-RPC)(30%) 3. 悪意あるプラグインやサーバー設定の甘さ(20%) つまり、ハッキングされるサイトの大半は「基本的なセキュリティ対策を怠った結果、既知の脆弱性を突かれている」。 防ぐためにやるべきことはシンプル! ✅ 定期アップデート ✅ 2FA(2段階認証)を有効化 ✅ ログインページを保護 ✅ 怪しいプラグインやテーマを入れ ない ✅ 適切なサーバー設定をする。これをちゃんとやれば、WordPress のハッキングリスクは 90% 以上減らせる! 💪🔥
xmlrpcへの脆弱性対応
WordPressの後方互換を重んじるポリシーのため使われなくなった今でも「xmlrpc.php」ファイルが存在しており、このファイルに対するブルートフォース攻撃が絶えない。
<Files xmlrpc.php> Require all denied </Files>
DBでサイトURLを直接変更
mysql > SELECT * FROM wp_options WHERE option_name IN ('home','siteurl'); mysql > UPDATE wp_options SET option_value='https://example.com' WHERE option_name IN ('home','siteurl');
- Webアプリの セキュリティ対策 としては脆弱性管理とパスワード管理が極めて重要
- 十分に長くてランダムで辞書にないような良質なパスワードを設定
- プラグインは信頼できるものを必要最小限に抑える
- SiteGuard WPプラグインを導入
- ファイルのパーミッション設定も重要
- 全てのミドルウェアで常に最新バージョンを利用
- 特に WPバージョンアップはセキュリティの懸念が発生したために行われる
- wp-adminページをダイジェスト認証させる。ほとんどの攻撃はボットによって自動的に行われるため
- wp-confing.php に define('DISALLOW_FILE_EDIT', true); を追加してファイル編集を無効にする
- 管理アカウントに「admin」、テーブル接頭辞に「wp_」など簡単なものを設定しない
- ログをしっかりと監視する