編集の要約なし
 
(同じ利用者による、間の8版が非表示)
1行目: 1行目:
[[ファイル:WordPress-logo.png|thumb|WordPress|300px]]
[[ファイル:WordPress-logo.png|thumb|WordPress|300px]]


言わずと知れた世界のCMS。基本には[https://ja.wordpress.org/support/ 公式マニュアル]を参照。
言わずと知れたブログ/サイト系CMS。PHP製。基本的には[https://ja.wordpress.org/support/ 公式マニュアル]を参照。


==備忘メモ==
==備忘メモ==
===セキュリティ===
結論
80% 以上の WordPress ハッキングは以下の 3 つの原因に集約される:
1. WordPress / プラグイン / テーマを古いまま放置(50%以上)
2. ログインページの脆弱性(弱いパスワード・XML-RPC)(30%)
3. 悪意あるプラグインやサーバー設定の甘さ(20%)
つまり、ハッキングされるサイトの大半は「基本的なセキュリティ対策を怠った結果、既知の脆弱性を突かれている」。
防ぐためにやるべきことはシンプル! ✅ 定期アップデート ✅ 2FA(2段階認証)を有効化 ✅ ログインページを保護 ✅ 怪しいプラグインやテーマを入れ ない ✅ 適切なサーバー設定をする。これをちゃんとやれば、WordPress のハッキングリスクは 90% 以上減らせる! 💪🔥
===xmlrpcへの脆弱性対応===
===xmlrpcへの脆弱性対応===
WordPressの後方互換を重んじるポリシーのため使われなくなった今でも「[https://support.mngsv.jp/info/news/1429/ xmlrpc.php]」ファイルが存在しており、このファイルに対するブルートフォース攻撃が絶えない。
WordPressの後方互換を重んじるポリシーのため使われなくなった今でも「[https://support.mngsv.jp/info/news/1429/ xmlrpc.php]」ファイルが存在しており、このファイルに対するブルートフォース攻撃が絶えない。


  <Files xmlrpc.php>
  <Files xmlrpc.php>                                                                                                                                                                      
Order Deny,Allow
    Require all denied
Deny from All
  </Files>
  </Files>
===バックアップ===
WordPressデータは大切な資産。バックアップはクラウドストレージやメールなど安全な場所に投げる。crontab で作業を自動化しておくと良い。
$ mysqldump -u USER -pPASS -B DATABASE > backup.sql
$ tar zcf ~/backup/html.tar.gz -C /var/www/ html/
$ tar zxf html.tar.gz
crontabの設定
$ crontab -e
11 2 * * * /usr/local/bin/backup.sh
cron に scp させてリモートマシンのバックアップをとる場合、パスフレーズが設定されていると cron はパスワード解決できないのでパスフレーズが設定されていない秘密鍵を使う。


===DBでサイトURLを直接変更===
===DBでサイトURLを直接変更===
29行目: 25行目:
  mysql > UPDATE wp_options SET option_value='https://example.com' WHERE option_name IN ('home','siteurl');
  mysql > UPDATE wp_options SET option_value='https://example.com' WHERE option_name IN ('home','siteurl');


===セキュリティ===
* Webアプリの [https://blog.tokumaru.org/2015/12/wordpress-security.html セキュリティ対策] としては脆弱性管理とパスワード管理が極めて重要
* Webアプリの [https://blog.tokumaru.org/2015/12/wordpress-security.html セキュリティ対策] としては脆弱性管理とパスワード管理が極めて重要
* 十分に長くてランダムで辞書にないような良質なパスワードを設定
* 十分に長くてランダムで辞書にないような良質なパスワードを設定
42行目: 37行目:
* ログをしっかりと監視する
* ログをしっかりと監視する


===その他参照===
==その他参照==
* [[WordPressテーマを作る]]
* [[WordPressテーマを作る]]
* [[WordPressタグ]]
* [[WordPressタグ]]

2025年3月5日 (水) 17:33時点における最新版

WordPress

言わずと知れたブログ/サイト系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_」など簡単なものを設定しない
  • ログをしっかりと監視する

その他参照