CMSのプラグイン、何でもかんでも入れてませんか?:セキュリティ・アディッショナルタイム(6)(1/3 ページ)
2016年4月、国内の複数のWebサイトで相次いで個人情報の流出事件が発生した。原因は、Webサイト構築に利用していたCMSのプラグインソフトに存在した脆弱性だった。
2016年4月、国内の複数のWebサイトが不正アクセスを受け、個人情報が流出したことを明らかにした。原因は、CMS(Content Management System:コンテンツ管理システム)「Movable Type」のプラグインとして提供されている「ケータイキット for Movable Type」に存在していたOSコマンドインジェクションの脆弱(ぜいじゃく)性だ。
OSコマンドインジェクションは、比較的古くから存在していた問題だ。Webサイト内のフォームに文字列を入力することでサーバ上でOSのコマンドを実行させ、リモートからさまざまな意図しない操作を可能にしてしまうものだ。
確かに危険性は高いが、IPAが公開している「安全なWebサイトの作り方(pdf)」などにまとめられている通り、対策は示されている。また、OSコマンドを呼び出すのではなくライブラリを利用するといったプログラミング作法も広がり、企業などが個別に作り込むカスタムWebアプリケーションでは、最近はほとんど見かけなくなっているはずだった。
しかし今回の問題は、多数のユーザーが利用しているCMSのプラグインに存在するOSコマンドインジェクションの脆弱性、それもゼロデイ脆弱性が原因となって発生した。最初に被害に遭ったサイトはもちろん、事件が報じられた後も、複数のWebサイトが同じ脆弱性を狙う攻撃を受けたことを明らかにしている。
不要なソフトを使わないのと同じく、不要なプラグインは削除を
残念ながらここ数年、CMSは不正アクセスの格好のターゲットになっている。
もちろん第一の原因は、CMS本体やプラグインの脆弱性にある。だが、CMSというお手軽な仕組みによって、セキュリティも含めた十分なスキルや運用体制が整っていない状態でも、Webコンテンツを公開できてしまう環境が広がっていることも、一連の不正アクセスの遠因として挙げられるのではないだろうか。根本的な原因が、Webサイトで動作しているソフトウェアの脆弱性にあるにせよ、エンドユーザーからすれば、サービスを利用していて漏えい被害に遭ってしまったことに変わりはない。
CMSは、一から自力でWebサイトを用意しなくとも、テキストや画像を書き込むだけで簡単にWebページを作成し、公開できることから、非常に多くの企業で採用されてきた。ホスティングサービスやVPSの一メニューとして用意されていることも多い。それだけに、自分がどんなCMSソフトウェアやプラグインを用いてWebサーバを運用しているか、深く認識しないままでも運用できてしまう。
HASHコンサルティング 代表取締役の徳丸浩氏は、「どうすればセキュアに運用できるか理解し、アップデートなどの作業をきちんとできる技術者は限られている。もし自社(やWebの運用を委託している会社)でできないならば、そのプラグインは本当に必要なのかどうかを問い直すべきではないか」と述べている。つまり、少なくとも自社で運用しているCMS本体やプラグインの種類とバージョンを把握し、必要に応じてアップデートできる力量を備えるべきではないかというわけだ。
CMSプラグインのセキュリティ検査は不十分?
それでなくてもWordPressやMovable Type、Joomla!、DrupalといったCMS本体、そしてプラグインの脆弱性は近年数多く発見されている。こうした脆弱性に何らかの傾向はあるのだろうか?
徳丸氏は「CMS本体とプラグインの問題は、分けて考えるべき」という。CMS本体については「割とよくできており、脆弱性が見つかったとしても複雑な手法で攻撃する必要がある場合が多い。ただし、使っているサイトの数は多いので、成功すれば見返りは大きいとも言える」という。
一方、CMSのプラグインは残念ながら「まずい」(徳丸氏)状況だ。公式サイト以外で配布されているプラグインはもちろんだが、公式サイトで配布されている有償・無償のプラグインの中にも、認証なしでテーマをアップロードできてしまうプラグインや、セキュリティを強化するはずなのにSQLインジェクションの脆弱性が含まれているプラグインまであるという。
公式サイトを運用しているCMS開発元も審査は行っているが、セキュリティ脆弱性を詳しく見ているとは言い難い。また、いったん審査を通ったプラグインが、その後更新されずに長年放置される場合もある。
クライアントPCで動作するOSやブラウザ、ブラウザのプラグインには、セキュリティ修正を通知したり、アップデートを自動的に適用する仕組みが整えられている。これに対し、基本的にサーバ上で動作するCMSとプラグインは、管理者の存在を前提とするためか、一部を除き自動アップデートの仕組みが整っているとは言い難い。WordPressなどのように自動アップデート機能を用意しているCMSもあるが、サイトへの影響を恐れてか、自動アップデートを利用しているサイトは少ないようだ。
こうした現状が、WordPressの主要なプラグインやテーマをチェックし、言語仕様やセキュリティルールなどに適合しているかを調査することを目的にプライム・テクノロジーが立ち上げた「KUSANAGI Ready プロジェクト」に同氏が協力している理由の一つだという。
Copyright © ITmedia, Inc. All Rights Reserved.