WordPressのセキュリティ対策について。
2023年02月20日
Windows 11等と同じく(作りはかなり違いますが)WordPressもブログラムですので、アップデートやメンテナンスが必要です。
最新のセキュリティ情報に注意し、継続的にメンテナンスを行わなければなりません。
まず、脅威について整理しましょう。
乗っ取りや改竄。
- サイトの管理者権限を乗っ取られて、ログインできなくなってしまう。
- ホームページの内容が書き換えられてしまう。
- 全く関係の無いホームページに変えられてしまう。
- 見た目は変わらず、連絡先等を書き換えられる。
情報漏洩。
- メールアドレス、ユーザーの住所等、ユーザーのログイン情報(アカウント名とパスワード)、クレジットカード情報等が登録されている場合、流出する恐れ。
- 非公開記事、下書き等の盗難。
次に手口です。
内部の犯行またはミス(ソーシャルハッキング)。
- アカウント名とパスワードを書いたメモを落とした/盗まれた/公開した。
- 社員がデータをコピー・流用した。
- 退職した社員がログインした。
プログラムの脆弱性を突いた外部からの攻撃。
- プログラムの脆弱性を放置したままにして、そこを突かれる(ゼロデイ攻撃)。
力任せの攻撃。
- WordPressではアカウント名は調べれば分かってしまうため、パスワードリストで順にアタックしてくる(パスワードリスト攻撃/ブルートフォースアタック/総当たり攻撃)。
- 多数のクライアントから同時多発的にアクセスし、サーバ負荷を高めて機能停止または高負荷時に発生する脆弱性を突かれる(DDoS攻撃)。
行うべきセキュリティ対策。
サーバの設定。
- ファイルやディレクトリごとに適切なパーミッション(アクセス権限)を設定。
- 使わないファイルの削除。サーバは「データ置き場/物置」ではないと心がけること。
- デーモン(サーバ上で動くプログラム/PHPやMySQL等のバージョンを指定できることがある)を最新バージョンにする。
- ログイン試行回数制限の設定。
- 万が一に備えたバックアップの設定。リアルタイムだけでは「汚染されたバックアップ」しかなくなるため、複数日に亘るアーカイブが必要。
WordPressの設定。
WordPressが正しくセットアップされていることが重要です。テーマ(テンプレート)にも脆弱性があってはなりません。
- WordPress本体、プラグインとも最新バージョンを使用する。
- 開発が停止されたプラグインは削除し、代替策を検討。
- テーマ内で使用されているJavaScriptのバージョンアップ。
- インストール時にのみ使用するファイルを削除。wp-config-sample.php等。
- 海外からのダッシュボードへのログインの禁止。
- 記事投稿に使用されるREST APIへの海外からのアクセス制限。
- リモート投稿に使用されるXML-RPC WordPress APIへの海外からのアクセス制限。
- Windows Live Writerを利用して記事を作成・投稿するための情報が記述されているwlwmanifest.xmlへの海外からのアクセス制限。
- 大量コメント・トラックバック制限。
- 国外IPアドレスからのコメント・トラックバック制限。
- 不要なユーザーの削除。
- パスワード強化。
- ユーザー毎に異なるアカウントとパスワードを使用する。互いのパスワードを知らないことが、既存アカウントによる不正ログインがあった際の強力な手がかりになる。
- admin、ドメイン名等のアカウント名を使用しない。すでに存在している場合は削除。
- スパムフィルタ(reCAPTCHA・Akismet等)の導入。reCAPTCHAは送信時、Akismetは受信時にスパム判定を行う。
- ブルートフォース攻撃への対応。
- 適切なキャッシュシステムの導入。サーバ負荷を減らすことは予期せぬエラーの軽減につながるため。
- .htaccessの適切な設定。
- SSL化。現在、https://でアクセスできないサイトは「このサイトは安全ではありません」と表示される。
- 二段階認証の導入。ログイン時に指定メールアドレスにパスコードが送られるため、仮にパスワードが流出した場合でも当人以外はログインできない。
ユーザーやメールアドレスの設定。
- 退職した社員のアカウントやメールアドレスの速やかな削除。
対策時の問題点。
ところが上記のような対策を調査なしに全部やってしまうと、サイトが正常に表示されない等の問題が発生することがあります。
WordPressのテーマ(テンプレート)はPHPというプログラムで作られています。その言語PHPがバージョンアップした際に、廃止になった関数があったりするのです。またサーバには無関係ですが、新しいjQueryのバージョンに差し替えた場合にも同様のことが起こりえます。
さらにWordPressのバージョンとプラグイン、プラグイン同士のバージョンによってもコンフリクトが発生することもあります。「相性問題」とよく言われるものです。
これらに全て注意を払い、さらにはここに記載されていない新たな問題にも対応していくことが必要ですので、プロにお任せいただけるのが最善です。
サーバの選定。
DDoS攻撃についてはユーザー側で対処できることがなく、ターゲットにされた場合は指をくわえて見ている他ありません。サーバそのものの強化、万が一攻撃された際の通信の遮断など的確な対応をしてくれるサーバを選ばなければなりません。
参考:https://www.xserver.ne.jp/news_detail.php?view_id=6930
その他様々な実績を考慮して、XSERVERおよびその上位バージョンXSERVER Busisnessをお勧めします。
▶アクセスが多いサイトでも安心・サポートがより充実したビジネス用サーバ【XSERVER Busisness】。
1日のPVが1万を超えるようなサイトではXSERVER Busisnessをお勧めします。
XSERVERの良い点。
- 速い・安い・高い信頼性。2014年から使用しています。1日最高2万PVオーバー、Buisinessでは1日最高30万PVオーバーでも対応できました。
- 最小の「スタンダード」でも300GBのディスクスペースを利用できます。
- 管理画面が大変使いやすくできています。
- データ、データベースとも1週間分の自動バックアップがあります。
- 他のサイトでは自分で設定しなければならないことが多い「ログイン試行回数制限」「海外からの管理画面アクセス拒否」等を、XSERVER管理画面で設定できます。
- PHP、MySQLのバージョンを設定可能です。
- デーモンのバージョンアップ時、サーバ移転をせずにバージョンを変更可能です。他のサーバではサービス内容変更時にサーバの引っ越しを強要されることがままあります。
- 無料のSSLを設定できます。
- 無料ドメインプレゼントあり。移管にも対応しています。
- マルチドメイン(1サーバあたり5ドメインまでを推奨)・サブドメインに対応しています。
- Businessでは「Web改竄検知」「複数管理者設定」「無料設定代行」に対応しています。
現在のサーバの速度・セキュリティ・使い勝手に不満がある方はぜひご相談ください。
この記事は2023/02/20に公開され、59 views読まれました。