皆さま、こんにちは。
WordPressは世界でいちばん使われているCMSです。そのシェアの高さからサイバー攻撃のターゲットにされやすいとも言われています。そのため、WordPressを利用してWEBサイトを構築するなら、セキュリティを強化する対策も不可欠です。
攻撃の中で目立つのがWEBサイトが改ざんされる事例です。企業のWEBサイトが改ざんされて悪意のあるWEBサイトへのリンクが貼られたり、YouTubeの動画が貼られたり。
実際に私も利用者として閲覧している最中に改ざんされてしまったWEBサイトを目にしたことがあります。そのWEBサイトは不特定多数が閲覧するようなサイトではなく、規模も小さかったですが、改ざん被害にあってしまいました。突然のことで運営側は対処が大変だったようです。
セキュリティ面でいくつかの対策方法がある中で、かかる費用も少なく、必須と言えるのは以下の4つです。
- WordPress、プラグインなどをアップデートして最新の状態に保つ
- 更新が止まったプラグインは使わない
- IDやパスワードを強固なものにする
- セキュリティ対策プラグインを導入する
これまでに当サイトでも何度か記事内で紹介してきた方法なのですが、特にセキュリティ対策プラグインはインストールして管理画面から設定を行うだけでセキュリティが向上しますのでお勧めです。
セキュリティ対策プラグインの中でいちばん使われているのは「SiteGuard WP Plugin」です。
https://www.jp-secure.com/siteguard_wp_plugin/
日本企業が開発したプラグインのため、もちろん全て日本語。メニューもマニュアルも日本語で読みやすく、国内でこのプラグインが人気であることもよくわかります。
プラグインインストール後にWordPressの管理画面を見ると、12の機能がズラリと並びます。その中には専門的な知識がなくてもすぐに実行して使える機能もあります。
そこで今回は、機能のそれぞれが何に効果があり、どう設定するのが良いのか一つずつご紹介します。
■「SiteGuard WP Plugin」インストール前のご確認
プラグインをインストール→有効化すると、そのタイミングからWordPressのログインURLが自動的に変更になります。そのため、ログイン用にブックマークしている方はそこからログインできなくなりますので、有効化したらすぐにWordPressの管理画面上で確認できる新ログインURLをブックマークしなおしてください。
1.管理ページアクセス制限
管理ページアクセス制限機能をONにすると、ログイン記録のない接続元から「/wp-admin/」へアクセスがあると、自動的に404エラーページを表示して不正ログイン攻撃を防いでくれます。
・注意点
この機能をONにすると、管理者も「/wp-admin/」へアクセスできなくなります。制御が難しいためこの機能はOFFにしている管理者が多いです。
2.ログインページ変更
WordPressのログインページURLが変更になります。記事の冒頭でもお知らせした通り、プラグインを有効化するとデフォルトで機能がONになるため、これまでのログインURLは使えなくなります。
<変更前>
https://ドメイン名/wp-admin
<変更後>
https://ドメイン名/login_xxxxx
(初期設定は5桁の数字がランダムに入りますが、好みの英数字に変更できます)
■メリット
WordPressで構築したWEBサイトはログインページのURLがどのサイトも同じになるため、攻撃対象にされやすくなっています。そのため、ログインURLを変更するだけで攻撃を受けづらくなります。
・オススメ設定
新しいログインページURLは管理画面から確認でき、好みの任意の文字列に変更できます。このプラグインが人気のため、5桁の数字でURLを変更していると予想して総当たりで攻撃される可能性もありますので、ランダムな文字列への変更もオススメです。
3.画像認証
ログインページやコメント投稿に、画面上に表示された文字の入力を求める機能です。
■メリット
機械的な総当たりのログイン攻撃を防止できます。
・オススメ設定
ログインページ、コメントページ、パスワード確認ページ、ユーザー登録ページの4つに画像認証を追加できます。それぞれ英数字/ひらがなを選ぶことができますが、世界的に使われる英数字よりひらがな認証のほうが攻撃の可能性を下げられるため”ひらがな”がよいと言われています。
4.ログイン詳細エラーメッセージの無効化
WordPressはログインIDが間違っていた場合には「ログインIDが間違っている」、そのほか「パスワードが間違っている」など、何がエラーになっているか返答する機能があります。そのエラーメッセージを変更します。
■メリット
攻撃してくる相手に対して与えるヒントを最低限にできます。
・注意点
ログインできない理由がぼんやりするので、ユーザー名やパスワードを発行したら管理をしっかりしておかないとログインできない人も出てくるかもしれませんのでご注意を。
5.ログインロック
ログインを何度も試すとロックがかかり、指定期間はログインができなくなる機能です。
■メリット
ログインアタックを受けづらくなります。
・オススメ設定
ユーザー名とパスワードを管理者がしっかり管理しておけば、何度もログインに失敗することはないはずなので、厳し目設定にすることをオススメします。
6.ログインアラート
WordPressにログインがあると管理者にメールで通知が届きます。
■メリット
不正ログインに気づきやすくなります。
・注意点
管理者のメールアドレスをお客様と共有している場合に、ログイン通知がたくさん届くと不快に思われてしまうことも。あまりに頻繁にログインするなら不正にも気づきづらいため、通知をオフにするほうがよいかもしれません。
7. フェールワンス
フェールワンス(=Fail Once、一回失敗する)の意味通り、正しいログイン情報を入力しても一度失敗になる機能です。5秒後以降で60秒以内に再度正しいログイン情報を入力すると、ログインできます。
■メリット
正しい情報でも失敗するため、機械的な攻撃時に正解がわかりづらくなります。
・注意点
日常的にログイン回数が多いと作業効率が下がります。バランスをみてON、OFFの選択を行ってください。
8. XMLRPC防御
ピンバック(リンクしましたよと通知する機能)や、XML-RPCを活用して遠隔操作してWordPress内にあるphpファイルを利用することでWEBサイトが攻撃され、記事が遠隔で編集されることもあります。
デフォルトはピンバックのみ無効化ですが、最近XML-RPCを活用して激しく攻撃される例があるとのことで、両方無効化することを推奨する技術者が多いです。
・注意点
XML-RPCを活用してメールで記事を投稿したり、編集アプリから記事を投稿・編集したりしているなどの場合、無効化するとその機能が使えなくなります。もし影響があるかどうかわからないときは制作した会社や社内の担当者にご確認のうえ、無効化設定をしてください。
9. ユーザー名漏えい防御
WordPressでは管理者でなくてもユーザー名がわかります。下記リンクで検索すると、自動転送機能が働き、ユーザー名が入ったURLが出てきてしまうからです。
<ユーザー名チェック>
https://ドメイン名/?author=● ※●は数字
ユーザー名がわかっていればユーザー名の推測が不要になりますから、よりログインを安易にしてしまいます。
■メリット
この機能をONにするとユーザー名がアドレスバーに表示されなくなります。ユーザー名は生きていますので、通常の利用には問題がありません。
・注意点
ユーザー名を活用する別のプラグインを入れているときなどは不具合が出る可能性があります。管理画面からこの機能を使わずに動かすプラグインを設定できるので、不具合があれば除外してください。
10. 更新通知
当記事の冒頭でもお伝えしましたが、WordPress本体やプラグインのバージョンは最新に保つことが大切です。この機能をONにするとアップデート可能になってから24時間以内にメールが届きます。
■メリット
たくさんのWEBサイトを管理していたとしても、最新の状態を保ちやすくなります。
・注意点
プラグインの数が多いと更新通知が非常に多く届いてしまいます。WordPress本体の更新だけにするなど、何の通知を送るか管理画面から調整してください。
11. WAFチューニングサポート
レンタルサーバーが導入しているセキュリティにより、WordPressの管理画面でエラーが出ることがあります。それを回避する機能です。
以下のような利用者の多いレンタルサーバーでも採用されています。
- さくらインターネット
- ヘテムル
- ロリポップ!
デフォルトではOFFになっているので、エラーが出た場合などに設定します。ただ少し専門的な機能なので、エラーが出て困ったらまずは制作会社や社内の担当者と相談してください。
12. ログイン履歴
WordPressへログインした履歴が一覧表示できる機能です。どのログイン名で、どのページにいつログインを試みて、成功したのか失敗したのかなどもわかります。
■メリット
心当たりのないログインが多ければ、狙われている証拠です。セキュリティレベルを上げたほうがよいことがわかります。
ログが見やすいと不正なアクセスや攻撃に気づきやすいですね。ただ、あまりにもログインが多くて不正が見つけづらいWEBサイトを運営されていらっしゃる場合はこのプラグインではチェックしきれない可能性があります。ログイン履歴はデータベースにも保存されているので、保守をお願いしている担当者様に連絡を取っていただき、定期的にチェックされるのをオススメします。
まとめ
WordPressのシェアが高いうちは、どうしてもハッカーからの攻撃を受けやすくなります。WordPressの構築時に担当者にご相談のうえで設定などをお願いしておくと、最初からセキュリティレベルの高いWEBサイトをつくることができます。自前で保守管理をしている皆さまは今回ご紹介したプラグインをご活用ください。また、このプラグインを使う以外のセキュリティ対策については、【重要】WordPressのセキュリティは大丈夫!?、もっと基本的な内容についてはあなたのWordPressのセキュリティは大丈夫?コレだけはしたいセキュリティ対策をご確認ください。
このほかにもセキュリティ強化のための方法はあります。例えばユーザー名を一般的な「admin」にしない、パスワードを総当たりでも見破りづらい8桁以上にするなど、費用をかけずにできる対策もあります。当サイトでも紹介していきますので、皆さんのご参考にしていただけましたら幸いです。