WordPressの管理画面からバージョン情報を確認することは、ログインしているユーザーであれば誰しも可能です。
しかし、特別な対策を講じていない場合、外部の人でも使用しているWordPressのバージョンを確認することができてしまいます。
WordPressのバージョンが外部からでも確認できるということは、WordPress本体やプラグインのアップデートが行われていない場合、それが外部に知れ渡ってしまう可能性があるということ。
このページでは、WordPressのセキュリティ対策の一つである、バージョンを非表示・隠す方法について紹介します。
目次
WordPressのバージョン情報は外部から見られる
WordPressのバージョン情報は、外部から確認することができます。具体的には、WordPressサイトのHTMLコードを見ることで簡単に確認できます。
また、下記画像は、「wappalyzer」というツールを使って、そのサイトで使用されている技術を調べる例です。
このツールはサイトのコードを解析して判断するため、WordPressのバージョンが6.3.1であることが簡単に分かってしまいます。
WordPressのバージョン情報が外部から確認できるリスク
WordPressのバージョン情報が外部から見えることは、ウェブサイトのセキュリティに関する潜在的なリスクを抱えています。
具体的には、特定のバージョンに存在するセキュリティの脆弱性(セキュリティホールとも呼ばれます)を攻撃者が悪用する可能性があります。
これらの脆弱性は、WordPressの開発者が最善の努力を払って設計と実装を行っているにもかかわらず、完全に排除するのは難しいもの。攻撃者はWordPressの特定のバージョンに対して既知の脆弱性を悪用しようとします。
つまり、バージョン情報を入手することで、攻撃者は特定の攻撃方法を選択し、ウェブサイトに侵入しやすくなることがあります。
WordPressのバージョンを非表示にする方法【プラグインなし】
ここからは、WordPressのバージョン情報が外部に知られないための対策を紹介します。
まずはプラグインを用いない対処法です。functions.phpのコードを編集するので、WordPressの理解に不安がある方や初心者の方は、WordPressのバージョンを非表示にする方法【プラグインあり】の方法を実施してください。
また、編集前にファイルのバックアップを取ることをおすすめします。
WordPressのHTMLにバージョン情報が出力されている箇所はいくつかあるので、それら全てを非表示にする方法を説明していきます。一つずつ対処していきましょう。
1. meta generaratorを非表示にする
meta name=”generator”
は、何を用いてWebサイトが作られているのかを示すタグで、そのcontent属性の値にはWordPressのバージョン情報が表示されています。
そもそもこのタグ自体が不要なので、meta generatorを非表示にするコードをfunctions.phpに追記します。
remove_action( 'wp_head', 'wp_generator' );
確認してmeta generatorのタグ自体が消えていれば問題ありません。
2. CSS・JavaScriptの外部ファイル読み込みコード内のバージョンを非表示にする
ウェブサイト内で読み込んでいるCSSやJavaScriptファイル名にも、バージョンの情報が付与されることがあります。
この画像を見ると、style.css?ver=6.3.1
と記載されており、このWordPressのバージョンが6.3.1だと言うことが分かってしまいます。
そこで下記のコードをfunctions.phpに追記します。
function remove_src_wp_version( $dep ) {
$dep->default_version = '';
}
add_action( 'wp_default_scripts', 'remove_src_wp_version' );
add_action( 'wp_default_styles', 'remove_src_wp_version' );
下記が対応済みの読み込みコードですが、?ver=
以降のバージョン情報が非表示になっているのが分かります。
JavaScriptの読み込みコード部分も同様にバージョン情報が非表示になります。
3. RSS内のバージョンを非表示にする
RSSとは、「Really Simple Syndication」の略で、サイトの更新情報をユーザーに通知するための機能です。
そして、このRSSの中には、デフォルト状態で下記画像のようにWordPressの情報が表示されています。
今までと同様に、WordPressのバージョンが6.3.1だということが分かります。これを隠すには、下記のコードをfunctions.phpに記述します。
function remove_rss_version() {
return '';
}
add_filter( 'the_generator', 'remove_rss_version' );
記述した上で、再度見るとバージョンの情報が消えているのが分かります。
これでRSS内のバージョン情報非表示の対応は完了です。
4. emoji対応のJavaScriptを消す
WordPress4.2以降では、絵文字表示機能がデフォルトで組み込まれました。
絵文字表示に関連するJavaScriptコードには、WordPressのバージョン情報が含まれていますので、適切に対応する必要があります。
バージョンのみを非表示にするだけでも十分な対応ですが、ほとんど使用されない割にはページの表示速度に影響を与えるため、絵文字表示機能自体を削除することをおすすめしています。
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
以上が、プラグインを用いずにWordPressのバージョン情報を非表示にする方法です。
WordPressのバージョンを非表示にする方法【プラグインあり】
次に、プラグインを使ってWordPressのバージョンを非表示にする方法を説明します。
WordPressのバージョン非表示を行えるプラグインはいくつかあるのですが、その中でも「Meta Generator and Version Info Remover」を使用することをおすすめします。
十分な機能を搭載しており、インストール数も多く、更新が継続的に行われているためです。
導入方法は、「Meta Generator and Version Info Remover」をお使いのWordPressにインストールして有効化します。
※プラグインのインストール方法が分からない場合は、こちら(WordPressプラグインの導入・インストール方法)をご覧ください。
有効化の後、細かい設定ができるようになりますが、特に設定の変更は必要ありません。初期設定のままで大丈夫です。
meta generatorタグの削除や、CSS・JavaScriptの読み込みファイルのバージョン表示を削除がこのプラグインによって行われます。
以上で、プラグインを用いたバージョン非表示の対応は完了です。
WordPressの定期的なアップデートが重要
これまで、WordPressのバージョンを外部から隠す方法をお伝えしてきました。情報を非表示にすることはとても大切です。
ただし、それ以上に重要なことは、WordPressを定期的にアップデートし、最新のバージョンを維持することです。これはWordPress本体のみならず、テーマやプラグインにも同様のことが言えます。
最新のバージョンを保つことでセキュリティパッチが適用され、ウェブサイトのセキュリティが向上します。定期的なバージョンアップデートを実施することを常に心掛けましょう。
このページのまとめ
この記事では、WordPressのバージョン情報が外部から確認されるリスクと、それを非表示にする方法について説明しました。
外部からバージョン情報が見えることは、ウェブサイトのセキュリティに潜在的なリスクをもたらす可能性があります。バージョン情報を非表示にするために、functions.phpを編集する方法や、プラグインを使用する方法を紹介しました。
しかしながら、バージョン情報を非表示にするだけでなく、定期的なWordPressのアップデートも重要です。
ウェブサイトのセキュリティは常に重要ですので、今回の情報を参考にしてセキュリティ対策を行ってください。