WordPressを利用をする際、「セキュリティが気になる」と思われる担当者の方は多いのではないでしょうか。
この記事ではなぜWordPressを利用する際にセキュリティが気になると言われがちなのか、どのように対応すれば良いのかを紹介いたします。
セキュリティが気になる理由2点
それでは早速、なぜWordPressはセキュリティが気になると言われるのか解説していきます。
そんなことは知っているから対策をみたいという方はこちらを押下してください。
1. 日々見つかる脆弱性
WordPressはとても頻繁に脆弱性が見つかります。
ではなぜそんなに頻繁に脆弱性が見つかるのでしょうか。
それは世界で最も利用されるCMSだからこそ悪意のあるハッカーも集中的に弱点(脆弱性)を探しているからです。
2. アップデート対応ができない体制
脆弱性が見つかれば、それに対応するアップデートが配布されます。
会社内の運用体制が整っていない場合(保守契約がない、)には、アップデート対応ができないままになりセキュリティリスクを抱えたウェブサイトになってしまいます。
セキュリティ対策は「いたちごっこ」と呼ばれたりしますが、責任の大きい企業の場合は特に、いたちごっこだから何もやらなくていいという話にはなりません。
日々、弱点を克服するためにWordPressのコミュニティはアップデートを配信してくれているのでこまめにアップデートをかけるようにしましょう。

iPhoneを使っている方は多いと思いますが、iPhoneのOSやアプリのアップデートはすごく多いですよね。WordPressも同じくらい多いです。
セキュリティ対策5選
前置きが長くなりました。
それでは簡単にできる対策を5つ紹介いたします。
①REST API アクセスを防ぐ
みなさん知っていますか?
WordPressには簡単にユーザIDの情報を外部から確認する方法があります。
下記の手順に沿ってユーザー情報が取得できてしまうかどうか確認してみましょう。
ユーザーIDが取得できるかURLへアクセスして確認する
もしすでにWordPress製のサイトをお持ちの場合は、<yourdomain>の部分をご自身のウェブサイトのドメインに置き換えて下記のURLにアクセスしてみましょう。
https://<yourdomain>/wp-json/wp/v2/users

アクセスしたら次のような情報が表示される場合はログインIDが漏洩しているので対策が必要です。
このエンドポイントは必ず防ぎたいところです。
では、どのようにすれば良いのか共有します。
functions.phpに下記のコードを追加する
ユーザーIDの情報を漏洩させないためには下記のように対応しましょう。
// REST API Userを無効にする
function my_filter_rest_endpoints($endpoints)
{
if (isset($endpoints['/wp/v2/users'])) {
unset($endpoints['/wp/v2/users']);
}
if (isset($endpoints['/wp/v2/users/(?P<id>[\d]+)'])) {
unset($endpoints['/wp/v2/users/(?P<id>[\d]+)']);
}
return $endpoints;
}
add_filter('rest_endpoints', 'my_filter_rest_endpoints', 10, 1);

ユーザID情報の漏洩が防げているか確認する
コードを貼り付けたら保存して再度、先ほどアクセスしたエンドポイントにアクセスしてみます。
https://<yourdomain>/wp-json/wp/v2/users
そうすると、下記のようにアクセスができなくなっていることが確認できます。

②SiteGuard WP Pluginを導入してログイン周りのセキュリティを強化する
次にSiteGuard WP Pluginを紹介します。
Site Guard WP Pluginはインストールするだけで管理ページとログインページの保護をしてくれるプラグインです。
導入が簡単で費用も時間もかからないため、すべてのサイトが利用していいものでしょう。

前述した通りWordPressを利用したウェブサイトは適切な対策を行なっていない場合、ユーザIDの情報が簡単に漏洩したりします。
そのような場合でもこのプラグインを導入することで、管理画面ログインURLが変更になり、どんなIPからログインがあったのかなどがメールで通知されるようになります。


また、プラグインのインストールが完了するとログイン時に、文字の入力を求められる欄が追加されます。

③使わないプラグインは無効化・削除する
利用しないプラグインは脆弱性の問題になります。
使ってないのに、脆弱性の原因になるのは百害あって一利なしなので、すぐに削除しましょう。
仮に後からまた必要になっても、その時にまたインストールをすればいいだけの話です。
④xml-rpcを無効化する
xml-rpcとは簡単にいうと、遠隔操作するためのプロトコルです。
あまり利用している方は最近では見かけませんが、一部利用している方もいるかもしれません。
ですが、基本的には利用しない機能になるので無効化していて問題ないでしょう。


XML-RPCの無効化はここまです。
⑤コメントスパムをブロックする
WordPressは一つ一つの投稿にコメントを受け付ける設定ができますが、このコメント機能を利用して不正なメッセージとリンクを送信される場合が多くあります。
これは大半がBOTと呼ばれる自動で同じ動作を何度もするロボットの仕業であり、今回の対応でこちらを撃退することが可能になります。
それでは説明していきます。
まずは、下記のAll In One WP Security & Firewallをインストールして有効化します。

ツールの導入に成功すると


ここまでで、コメントスパムのブロック対応は完了です
まとめ
ここまで見てくださりありがとうございました。
WordPressのセキュリティがなぜ危ないと言われるのか?とそれに対する具体的な対策を5つ紹介しました。
みなさま、今回取り上げた5つの対策を実施されましたでしょうか?
すべて無料でできる対策なので是非対応していただければと思います。