インストールするだけで色々な機能が簡単に導入できるWordPressのプラグインって、ものすごく便利ですよね。ネットで人気のプラグインってだけど、とりあえずインストールしてみたくなるものです。
でも、それってセキュリティー上安全なのでしょうか?
WhiteSecurityの調査(Statistics Show Why WordPress is a Popular Hacker Target)によれば、70%以上のWordPressサイトが脆弱性を抱えているそうです。つまり、ハッカーなんかに攻撃を受けて、データの改ざん・盗難、マルウェア等の被害が起こりえるという話です。
この原因のひとつがプラグインによるものって、ご存知でしたか?
自分のサイトや、運用を代行しているクライアントのサイトは大丈夫って言い切れますか?
便利な機能を提供してくれるプラグインですが、セキュリティーホールになる可能性があります。
「セキュリティーホール」とは、セキュリティー上の穴(弱点)です。プラグインがサイトの弱点になり、そこから攻撃されてしまう危険性があるということです。
以下は、セキュリティーホールが報告されたプラグインの一例です。
Fast Secure Contact Form | 問い合わせフォームプラグイン。 4.0.37未満のバージョンでクロスサイトスクリプティング(XSS)に対する脆弱性。 |
---|---|
WordPress Files Upload | ファイルアップロードプラグイン。 3.4.0未満のバージョンで悪意のあるプログラムコードを含むファイルのアップロードと、そのファイルの実行。 |
Form Manager version | フォーラムプラグイン。 1.7.2未満のバージョンでRemote Command Execution (RCE)に対する脆弱性。 |
Crony Cronjob Manager | Cron(定期実行ジョブ)プラグイン。 0.4.4未満のバージョンでクロスサイトスクリプティング(XSS)と、クロスサイトリクエストフォージェリ(CSRF)に対する脆弱性。 |
Blubrry PowerPress Podcasting | ポッドキャスティングプラグイン。 6.0.4未満のバージョンでクロスサイトスクリプティング(XSS)に対する脆弱性。 |
上記のプラグインは新バージョンが公開され、報告のあったセキュリティーの問題をクリアしています。
ちなみ、この記事を書いている本日2016年10月4日にも「Appointment Schedule Booking System」プラグインで、クロスサイトスクリプティング(XSS)の脆弱性が報告されています。
WordPressの本体だけでなく利用しているプラグインについても常にアップデートを行い、最新のバージョンを利用する事がセキュリティー対策として重要です。
でも、とある事情でアップデート出来ないケースもあるんです。
『WordPressのアップグレードが出来なくって困っている』
『アップグレードしようとするとサイトが表示されなくなる』
そんなお問合せをいただき、お客さんの運用しているWordPressサイトを確認させていただくことがよくあります。当社で対応したケースに限って話をすると、WordPressのアップグレードで問題が発生する原因の一番手が「プラグイン」です。
WordPressアップグレード作業でのトラブルの原因ランキング
事例を紹介します。東京都内の事業者様より、「これまで稼働していたプラグインが動作しなくなった」とお問合せをいただきました。
とある予約プラグインを導入しているサイトで、WordPressを最新バージョンにアップグレードしたところ、予約システムが正しく動作しなくなったというご相談内容でした。
プラグインはWordPressプラグインディレクトリー上で配布されている無料のもの。
数年以上更新されておらず、最新のWordPressには対応していないことが調査で判明しました。
同等の機能のプラグインが見つからないため「WordPressのアップグレードを優先し、プラグインを停止」、「新規プラグインの開発」、「WordPressを元のバージョンにダウングレートし、プラグインを使い続ける」という選択肢になりました。
プラグイン自体がセキュリティーホールではありませんが、WordPress自体がアップグレード出来ないという事例です。
決して珍しい事例ではなく、WordPressのアップグレードのタイミングでサイトが真っ白(閲覧できなくなる状態)になる、ダッシュボードにログイン出来なくなる、といった事象にプラグインが関連していることはよくあります。
「プラグインをアップグレードしたところ、カスタム投稿のページが表示されなくなった」という事例を紹介します。外部の制作業者が作ったサイトを運用している神奈川県の事業者の方からの相談です。
「とあるプラグインを最新バージョンにアップグレードしたところ、カスタム投稿のコンテンツが表示されなくなり、パーマリンクの構造が意図しないものになった」という事象です。
パーマリンクの生成について、WordPressプラグインディレクトリーで公開されている、とあるプラグインを利用していました。
日本語化されていて、インストール数もかなり多い有名なプラグイン。検証環境にインストールしたWordPress上では最新版のプラグインでの動作に問題はなし。調査したところ自作したテーマに問題があることが分かりました。
不必要なプラグインは、セキュリティー上の観点から使わないのが望ましい。
プラグインの導入は目的ではなく、集客やブランディング等サイトの目的を手助けしてくる手段の一つです。とりあえず何でもインストールしてみようというミーハーなスタンスはビジネスサイトの運営には向きません。本当に必要な場合にのみプラグインを使いましょう。
ではどのようにプラグインを選定し、安全にWordPressの運用が出来るのかを考えてみましょう。
ネットショップで有効化してる「ネットショッププラグイン」と、一般的な会社の「問い合わせフォームを生成しているプラグイン」。停止したらヤバそうなのは、どちらでしょうか?
プラグインを導入する際、この視点を持つことをお勧めします。また、なんらかの事情で停止することになった場合、代替案を用意できるかが重要です。
例えば、問い合わせフォームのプラグインって停止してもなんとかなるもんです。他のプラグインを用意してサッと有効化する。「メールでの問い合わせは〇〇までと」書いておくなど、なんとかなります。
でもネットショップのプラグインって、商品の表示、カート、決済機能、ユーザー情報なんかも保存しているもののありますよね?停止したら、どうなりますか?使っているプラグインと同等のプラグインがすぐ手配できますか?
停止したら影響の大きいコンテンツへのプラグイン導入には考慮が必要です。
まずはプラグインの入手。WordPressのプラグインは以下の方法で入手可能です。
プラグインをインストールするといったら、やっぱりWordPressプラグインディレクトリー。
WordPressプラグインディレクトリーに公開されているプラグインは無料。公式サイトということもあり、最も利用されている入手経路です。
公開されているプラグインは個人または法人が作成したもので、承認を受け提供されています。承認といっても、100%安全だという保証付きという意味ではありません。公開されていても、脆弱性が発見されるというケースもあります。
『こんなプラグイン作ってみました。良かったら使ってください。自分のサイトにアップしておきます、ダウンロードしてね』というものです。
自分のサイトでの販売・配布となる為、WordPressの承認は当然ありません。
プラグインの配布元が善意の開発者かもしれませんし、そうでない可能性もあります。
日本国内だとプラグインのダウンロード販売サイトはまだまだ少ないですが、海外だとプラグインを販売しているサイトは数多く存在します。
一部の機能を制限した無料プラグインを配布し、その他の機能を有料で販売しているといったサイトもあります。
必要なプラグインが公開されていない場合や、独自プラグインの販売などを検討している場合の選択肢です。『ネットで見つからないじゃーオーダーメイドで業者に作ってもらおう』って、パターンですね。
オーダーメイドで作成するのは当然ながら割高です。
「予算がないのでプラグインで代用」というスタンスの場合は考慮しずらい選択肢です。
プラグイン開発業者の選定、依頼のために仕様書、導入後の保守など、お金以外の要素にも神経を使います。
WordPressプラグインディレクトリーから、インストール候補のプラグインを探す場合、「最終更新」を必ず確認しましょう。プラグインの改良、セキュリティー対策コードの実装など、プラグインはアップグレードされているものと、作ったまま放置されているものがあります。
最終更新が著しく古いものは、セキュリティー上の問題が放置されている可能性と、最新のWordPressに対応していないことがある為、サイトへの導入はお勧めしません。
ひとつの目安として更新が2年以上されていないものについては、インストールを見送りましょう。
WordPressプラグインディレクトリー上のプラグインを選定する際のもう一つの確認事項は、作者(プラグイン開発者)です。プラグインページでは作者及びプラグイン協力者の一覧の他、その作者が開発したプラグインの一覧が確認できます。
プラグインのこれまでの「サポート」についてもプラグインページから確認できます。ユーザーからの質問に対して、積極的な対応をしているかを確認できます。
『アップグレード出来るみたいだから、とりあえずアップグレードしてみよう!』
これ、失敗した際に取り返しがつかない事態になります。おススメな方法教えます。
運用しているサイトと同一の構成を用意しましょう。
何かしらの作業を行う際、まずは検証環境でテストをするという方法です。検証環境として望ましいのは、同一のサーバー上での構築です。例えば、Xserver上でWordPressを使っているのであれば同じサーバー上のサブディレクトリーにWordPressをインストールし、そこをテスト環境にするという構成です。
本番環境:ドメイン.com
検証環境:ドメイン.com/test_wp
まずはテスト環境でアップグレード作業を行います。
この手順で行い、問題がなければ本番環境でも同様の作業を行います。
人気記事 初心者でも可能なSEO対策って何?
人気記事 【ゼロから始める】副業ブログで月5万円を稼ぐ!当社スタッフが試してみた方法と成果を公表