ワードプレスやプラグインで脆弱性をふさぐためにアップデートが必要と言われますが、それでは脆弱性とは何なのかにつきまして最も危険なタイプの脆弱性について解説いたします。

ワードプレスにおける最も危険な脆弱性とは?

ワードプレスにはワードプレスの本体、テーマ、プラグイン を含めると2千から5千ファイルのPHPプログラミングファイルが含まれます。

こういったプログラムにプログラマーのミスや知識不足で、非常に低い確率とはなりますが、脆弱性のあるプログラムが含まれる場合があります。

最も危険な脆弱性とは、何らかの認証無しにインターネットを介して外部からデータベースやファイルに変更を加えることができる脆弱性が最も危険な脆弱性となり、ワードプレスの乗っ取りや、改ざんに利用されるのはほとんどがこういった脆弱性でございます。

※データベースとはワードプレスの投稿のコンテンツや設定を保存しているプログラムファイルとは別の動的に生成・書き換得ることができるデータを保持する仕組みの事です

また、こういった脆弱性は、有料のテーマやプラグインを無料でダウンロードできる違法なサイトでダウンロードしたプログラムに意図的に埋め込まれている場合もございます。

脆弱性があるだけで危険?

脆弱性は、あるだけで危険というわけではございませんで、この脆弱性がある事、その脆弱性がどういう風に利用できて、サイトにあることが外部からわかるような方法がハッカーの間で知られる形になっているものが最も危険です。

さらにこういった脆弱性のあるワードプレスのバージョンやプラグインが非常に多くのサイトで利用されている場合で、あなたのサイトにも存在すると、改ざんされる可能性がかなり大きくなってまいります。

こういう脆弱性は発見されてから時間がたてばたつほどより多くのハッカーに利用される形になってまいりますので脆弱性を放置されるとセキュリティー上問題が時間とともに大きくなっていくと考えてよいかと存じます。

ワードプレスの脆弱性は注意喚起のために、日本のJVN等のNPO法人からも公開されております。

具体的な脆弱性のあるプログラムの例

具体的にどういったプログラムが脆弱性を有するかを見ていきましょう。

1 データベースを認証無しに外部から書き換えできてしまう脆弱性の例

$user = $_POST['user'];
$sql = "SELECT FROM wp-user where user_name = '".$user."'";
$wpdb->query($sql);

このプログラムは、$_POST という処理で、データを受け取り、それをデータベースで探すプログラムですが、このプログラムに直接外部からデータを送り込んで、データベースを検索する処理に加えて、任意のSQL文をつなげて実行できてしまうものです。
例えば、ワードプレスの管理者ユーザーを作ってしまうこともできます。

こういったデータベースの脆弱性を攻撃する方法をSQLインジェクションと言います。

2 ファイルを認証無しに外部から改ざんできてしまう脆弱性の例

$data = $_POST['data'];
$filename = $_POST['filename'];
file_put_contents($filename,$data);

このプログラムは、$_POST という処理で、データを受け取り、受け取ったファイル名とデータでテキストを書き出すプログラムです。
ハッカーが任意のファイル名、内容のプログラムをサーバー上に書き込んでしまうことも可能ですので、不正なPHPプログラムを書き込んでブラウザーからアクセスして利用できるようにすることも可能です。

このような脆弱性はファイルアップロードアービタリティといい、この脆弱性を利用されるとデータベースの書き換えを含め、バックドアの埋め込みやサーバー上でできるあらゆることができてしまうようになります。

3 ファイルを認証無しに外部から表示できてしまう脆弱性の例

その他にもよくある脆弱性の例として、画像やファイルのプレビューが管理画面からできるタイプのプラグインで、プレビューのファイルを$_POSTで受け取って表示する機能を悪用できる脆弱性です。

$filename = $_POST['filename'];
$contents = file_get_contents($filename);
echo $contents;

このような脆弱性がプラグインにがあると、ワードプレスのデータベース接続情報を含むwp-config.phpを外部から閲覧されてしまい、データベースの接続のためのIDやパスワードが漏れてしまうことになります。

ーー

約1000パターンの危険な脆弱性を無料で検査できます↓ 
【無料】ワードプレス:マルウェアスキャン&セキュリティープラグイン [マルウェア・ウィルス検出と駆除]
(無料版の場合1度検査、有料版の場合無制限)

ハッカーに脆弱性を利用されないようにするには?

ハッカーに脆弱性を利用されないようにするのに、最も簡単な方法は、ワードプレスの本体を最新に保つ事、また不使用のプラグインやテーマを削除し、こちらも最新に保つことです。

プログラム製作者も日々脆弱性に対応するため、プログラムをアップデートし続けています。

参考
無料でできるワードプレスのセキュリティー対策5選

WordPress ワードプレスのマルウェア駆除と、セキュリティー対策を経験豊かなプロフェッショナルが代行いたします。お気軽にご相談 ご依頼 お送りください