図解サイバー攻撃 [Cyber Attack dot Net]

図解サイバー攻撃。サイバー攻撃・サイバーテロや情報漏洩などのサイバーセキュリティインシデントについて詳しくイラストで解説。

セキュリティ対策

セキュリティコンサルがやっているWordPressですべき3つのセキュリティ対策

投稿日:2017年4月10日 更新日:

WordPressはどのバージョンにも必ず脆弱性が存在しており、その脆弱性が発見される度にWordPressの開発者が新しいバージョンを開発して提供しています。最近ではWordPressの脆弱性を悪用してWordPressのアカウントを乗っ取り、コンテンツの改ざんや踏み台として利用したりしています。最近の事例としては、WordPressのREST APIの処理に起因する脆弱性が存在しており、これを悪用されるとコンテンツの改ざんされる可能性があるそうで、WordPressの4.7.2に更新するようにアナウンスがありました。

このようなニュースが流れると、WordPress利用者は様々なセキュリティ対策を行おうとインターネット上で情報収集を行いますが、インターネット上には沢山のセキュリティ対策が記載されていて、何をすれば良いのか、全部の対策を行う必要があるのか判断つかないと思います。ですのでこのページでは、セキュリティコンサルタントの私が行っている効果的なサイバー攻撃対策を3つだけ紹介します。この3つだけでも対応しておけば、ある程度のセキュリティリスクは削減できます。

最新のバージョンへアップデート

WordPressのセキュリティ対策として一番重要なのは、最新のバージョンを利用することです。ですので、最低でも月に1度管理画面にログインして最新のバージョンがリリースされたか確認しましょう。

最新のWordPressがリリースされると、WordPressのダッシュボードに「WordPressXXXが利用可能です!今すぐ更新してください。」というメッセージが表示されます。下の図の場合はWordPress4.7.3が最新のバージョンで、「今すぐ更新してください」をクリックするとバージョンアップの準備が始まります。

wordpressバージョンアップ

自動更新するか手動で更新するか選択できますが、一般的には自動更新を選びます。日本語版のWordPressを利用捨ている場合はWordPress 4.7.3-jaの「今すぐ更新」をクリックします。

wordpressバージョンアップ

10秒から20秒ほどでバージョンアップが行われて完了します。自動更新ですので、ユーザはこの間に何も作業する必要はありません。

二要素認証の導入:Google Authenticator

二要素認証とは以下の特徴を持つ要素(情報)の中から2つの要素を利用した認証方法です。

  • ユーザが知っている情報(Something you know)
  • ユーザが持っている情報(Something you have)
  • ユーザそのものを表す情報(Something you are)

二要素認証を利用することによって、パスワード、つまりユーザが知っている情報が盗まれたとしても不正ログインの被害に遭うリスクは低くなります。WordPressで二要素認証を導入する場合は「ユーザが知っている情報」と「ユーザが持っている情報」の2つの要素を利用してセキュリティの強化を行う事ができます。今回は「ユーザが持っている情報」としてGoogle Authenticatorを利用した例を説明します。

  • ユーザが知っている情報=WordPressにログインする際のパスワード
  • ユーザが持っている情報=Google Authenticatorのトークン

Google AuthenticatorはWordPressのプラグインです。このプラグインをインストールすると、下記の図のようにログイン画面に「Google Authenticator code」という欄が表示されます。

WordPress二要素認証

Google AuthenticatorはWordPressのプラグインから簡単にインストールできます。プラグインの新規追加画面でgoogle authenticatorで検索すると下の図のようにHenrik Schackという方が作成したプラグインが表示されます。

WordPress二要素認証

Google Authenticatorをインストールした後はメニューの「ユーザ」-「あなたのプロフィール」でGoogle Authenticatorの設定を行います。

wordpress二要素認証

「Active」- Google Authenticatorを有効にするためにチェックを入れます。

「Relaxed mode」- Google AuthenticatorではiphoneなどのスマートフォンにGoogle Authenticatorのアプリを入れて、そのアプリに表示される6桁の数字をログイン画面に入力します。仕組み上Google Authenticatorのサービスの時刻とスマートフォンの時刻が同じでなければ、6桁の数字は無効となりログインできません。ですので、このRelaxed modeを利用すると若干スマートフォンの時刻がずれていてもログインできる仕組みとなっています。また、別の用途としてスマートフォンに表示された6桁の数字をWordPressのログイン画面に入力する際に手間取ってしまう方もいますので、そのような場合もRelaxed modeは効果的ですが、一方でセキュリティレベルは若干下がります。基本的にはRelaxed modeはオフのままにしましょう。

「Description」- ここにWordPressのサイト名などを記載することによって、スマートフォンのアプリ側でどのサイトの二要素認証用のトークンかがわかります。

「Secret」- スマートフォンにGoogle Authenticatorをインストールして、WordPressに表示されているQRコードを読み取ると、スマートフォンのGoogle Authenticatorに6桁のトークンが表示されるようになります。

wp-config.phpのアクセス権変更

wp-config.phpにはとても重要な情報が記載されています。

  • WordPressで利用しているデータベース名
  • データベースのユーザ名
  • データベースユーザのパスワード
  • データベースのホスト名

多くのレンタルサーバのデータベースは、ある特定のホストからのみアクセス可能な設定になっていますので、外部からのアクセスのリスクは低いですが、上記のような情報を攻撃者に盗まれた場合は様々な手法を利用して悪用される可能性が高いです。ですので、wp-config.phpは所有者しかアクセスできないように設定しておく必要があります。設定の方法としてはパーミッションの変更する事と.htaccessで外部からのアクセスを拒否する方法の2種類あります。

パーミッションの変更

wp-config.phpのパーミッションはデフォルトで「666」もしくは「644」となっています。この場合、グループや全ユーザがwp-config.phpを読み取る事が可能となりますので、所有者以外にはアクセスできないようにパーミッションを変更していた方が良いでしょう。wp-config.phpのパーミッションに「400」(所有者は読み取りだけ可能)を推奨する方が多数いますが、WordPressの推奨値は「600」(所有者は読み取りおよび書き込みが可能)ですので、「600」に設定しておきましょう。

wp-config.phpのパーミッション変更

.htaccessの設定

.htaccessは簡単に説明すると、外部からのWebアクセスに対する制限などを設定することができます。wp-config.phpと同じディレクトリにある.htaccessの先頭に以下の4行を追加することによって、外部からwp-config.phpに対してWebアクセスができなくなります。

 

広告

広告

-セキュリティ対策

関連記事

脆弱性に関する識別子や略語およびそれらの関係

JPCERT/CCやUS-CERTやベンダーのサイトで脆弱性に関する情報を読んでいると様々な識別子や略語が登場します。ここではそれらの識別子や略語に関して説明します。 マイクロソフトのKB番号とMS番 …

脆弱性情報の収集(OSINT)

脆弱性情報の入手(日本) 脆弱性の情報は様々な組織・機関・ベンダーのサイトから入手することができますが、以下の点に注意して情報を入手するサイトを選ぶ必要があります。 信頼のおける情報かどうか? 最新の …

アメリカンエクスプレスが購入時のサイン不要に

アメックスは、店舗でクレジットカードで購入する際に顧客に求めていたサインの記入を2018年4月から廃止するとのことです。アメックスでは既にアメリカで50ドル未満の買い物についてはサインを要求していませ …