2021.05.01

【WordPress】【セキュリティ対策】ログインユーザー情報は非表示にしよう

こんにちは、webエンジニアのゾノ( @ozonosho )です。

セキュリティ基準がしっかりしている企業案件の場合、WordPressの初期ファイルや初期機能をそのままにしていると納品時にNGとなるチェックポイントが多々あります。

そんな場面に出くわしたときのために、何回かに分けて対策を紹介していきます。

今回はログインユーザー情報の非表示設定についてです。

WordPressを利用しているサイトは、WP REST APIにアクセスしたり著者アーカイブページを閲覧したりすることで第三者でも簡単にログインユーザー情報(ユーザーIDやユーザー名)を取得できてしまいます。

ログインユーザー情報を取得されてしまうと総当り攻撃(Brute-Force)による被害リスクが上がるため、WP REST APIや著者アーカイブページを利用していない場合にはそれぞれ廃止またはアクセスを限定させるなどの対策をしましょう。

そんなわけで、WP REST APIからのアクセスを回避する対策ならびに著者アーカイブページの閲覧を回避する対策をご紹介します。

①WP REST APIからのアクセスを回避する対策

ログインしていない場合にWP REST API自体を無効にする処理を加え、WP REST APIからアーカイブ情報にアクセスすることを防ぎます。

WP REST APIを利用しているプラグインがある場合には、そのプラグインのみアクセスを許可することで対応するのが良いです。

(実装例)
functions.phpに以下のようなコードを追加します。

②著者アーカイブページの閲覧を回避する対策

WordPressを利用しているサイトは初期仕様で「https://ドメイン/author/ユーザー名」というURLに著者アーカイブページが生成されます。

ユーザー名はログインにも利用される情報なので、URLから管理者を含むユーザーのユーザー名が取得できてしまうのは少し危うい設計です。そのため利用していないのであれば下記のコードで廃止しましょう。

著者アーカイブページをすべて廃止する場合

functions.phpに下記コードを記載することで著者アーカイブページを完全に廃止することができます。

管理者の著者アーカイブページだけ廃止する場合

functions.phpに下記コードを記載することで特定の権限を持つユーザーの著者アーカイブページだけを廃止することもできます。

おわりに

以上、今回の記事ではWP REST APIからのアクセスを回避する対策ならびに著者アーカイブページの閲覧を回避する対策を紹介させていただきました。

どちらも対策しておけばログインユーザー情報を第三者に取得されて総当り攻撃を受けるリスクが下がります。ぜひ活用ください。

当サイトではWordpressのカスタマイズ制作依頼を請け負っています。運営中のサイトで何かお困りのことがある方は、下記の記事を参照のうえ気軽にご相談ください。

どんな機能・要望でもOK!『Wordpressのカスタマイズ制作』はじめました。

こんにちは、webエンジニアのゾノ( @ozonosho )です。 このたびWordpressのカスタマイズ制作をはじめました。......

→この記事を読む
チャレンジを応援する無料オンラインコミュニティ運営中!

生きづらさを抱える人のチャレンジを応援する無料オンラインコミュニティ『Cree』をスタートしました。ただいま参加者100名突破!お互いの目標を共有したり、就労・就職のサポートするサービスを無料で提供しています。

オンラインコミュニティの詳細はこちら

ゾノについて

お仕事のご相談はこちら