Dyno

WordPress サイトのバージョン情報を隠すことはセキュリティ向上にどのくらい効果があるのか

今回は WordPress サイトでバージョン情報を隠すことにはセキュリティ的にどのくらいの効果があるのかというお話をします。

WordPress のバージョン情報を隠してもセキュリティはよくならない

WordPress を使って特に何もせずにそのままサイトを立ち上げると、ウェブページの HTML の中に WordPress のバージョン情報が出力されます。 そのため、 WordPress サイトの訪問者はサイトで使われている WordPress のバージョンをかんたんに調べることができます。

ただし、数行のコードを書けばこのバージョン情報を出力しない形に変更することもできて、そのような方法を「セキュリティの向上につながる」と言って紹介している人がいるのですが、実際にはそのような方法を使って WordPress のバージョンをわからなくする・わかりづらくすることにはセキュリティ向上の効果はありません

以下に理由を説明します。

犯罪者たちは WordPress のバージョン情報を確認してから攻撃するわけではない

WordPress のバージョンを隠すことがセキュリティ向上になるという考えは「サイトで WordPress を使っていること、特に古いバージョンの WordPress を使っていることが知られると、既知の脆弱性を悪用した攻撃で被害を受けるリスクが高まる」という仮説・認識に基づいているものと思いますが、この認識が間違っています。

サイトを攻撃するクラッカーたち(以下「犯罪者」)は手作業でひとつひとつサイトを攻撃するわけではありません。 自動化プログラムを書いて、自動的・機械的に大量のサイトを攻撃します。 そのときに、「まず最初にサイトで使われている WordPress のバージョンを確認して、それから古いバージョンが使われていれば改めて攻撃を行う」なんて悠長なことはやりません。 バージョンの確認なんてせずに脆弱性を悪用した攻撃をダイレクトに行ってきます。 攻撃が成功すれば結果として脆弱性に未対応の WordPress が使われていたことがわかりますし、逆に成功しなければ対応済みということがわかるので、彼らにとってはバージョン情報をわざわざチェックする理由がありません。

犯罪者たちは WordPress サイトかどうかの確認さえしないこともある

さらに言うと、攻撃先のサイトで WordPress が使われているかどうかさえ調べずに攻撃してくるボットもたくさんあります。

理由は明らかで、 WordPress のシェアが圧倒的に高いからです。 WordPress は全世界のサイトの 33% 以上で使われているので、世の中のサイトをランダムに 1 つ選んだらおよそ 3 分の 1 の確率で WordPress サイトにあたります。

そのような状況なので、各サイトで WordPress が使われているかどうかチェックする暇があったら、ひとつでも多くのサイトに攻撃をしかけた方が効率的だと犯罪者たちが考えるのも無理はありません。 私が運営する非 WordPress サイトにも WordPress の脆弱性を悪用したボット攻撃が毎月何百回とやってくるので、これは日々実感するところです。

このような犯罪者心理やサイト攻撃の実情を考えれば WordPress のバージョン情報を隠してもセキュリティ向上にはならないことは明らかですが、ウェブ業界で働いている人の中にもこのあたりを勘違いしている人が結構たくさんいます。 ウェブ業界の外の方なら尚のこと、ウェブ業界の人から「セキュリティ向上になるのでバージョン情報を隠しましょう」と自信満々に言われて、「それって本当に効果あるの?」と疑える人は少ないと思います。

バージョン情報を隠せばセキュリティ向上になるという思い込みには弊害も

ということで、 WordPress のバージョン情報を隠してもセキュリティ改善の効果は得られません。 逆に言うとセキュリティが下がるわけでもないので単体で見るとセキュリティ的にはニュートラルなのですが、人々が「 WordPress のバージョンを隠すと攻撃の抑止になるんだ、リスクが減るんだ」と勘違いして安心し、本来行うべきセキュリティ対策がおろそかになってしまうようであれば、それは全体的に見るとマイナスです。 実際には効果が無いものなのに偽りの安心感を与えてしまうのであれば、それはむしろセキュリティ的にはマイナスで「やらない方がまし」とも言えるでしょう。

しかし、有名企業が所有する WordPress サイトでもバージョン情報を隠しているところが結構ありますし、今でも勘違いしている人・勘違いさせる情報源が多いのが現状のようです。

ということで WordPress のバージョン情報を隠すことはセキュリティ向上にどのくらいの効果があるのかというお話でした。 今回は WordPress のお話でしたが、他のオープンソース CMS でも原則は同じです。 ご参考になれば幸いです。