【WordPress.orgにも脆弱性のあるものは存在する】WordPressのテーマやプラグインで脆弱性のある「timthumb.php」を検出する方法

ここ数日WordPressのテーマやプラグインのセキュリティ関連の話題が盛んですかね。

というわけで、今回は「timthumb.php」が使われていないかどうか、検出する方法をご紹介します。

・・・その前に「timthumb.php」についてからご紹介しますね。

以下、お暇でしたら参考までにご覧下さい。

「timthumb.php」はいったい何がいけないのか

前提として知っておく必要があるのが、「timthumb.php」はなんなのか。

「なぜ、脆弱なのか」をおおよそでもいいから理解したほうがいいです。

何も理解せずに「やばいよ、やばいよ」という言葉だけが独り歩きするのが一番本意ではないと思いますので・・・

最もシンプルに説明されているサイトがこちらです。

Vulnerability Found in timthumb.php

引用しますと・・・

この脆弱性により、第三者が任意のPHPコードをTimThumbキャッシュディレクトリにアップロードでき、

そのコードを実行されてしまいます。

timthumb.php もしくは thumb.php が無くても動作するならこのファイルをサイトから削除するようおすすめします。

もし使っていないテーマやプラグインの中にこのファイルがあったら、

そのテーマやプラグインのディレクトリごと削除したほうがいいでしょう。

というわけですね。

削除したほうがよいと私も考えます。仮に現在は脆弱性が解消されたものだとしても、一度狙われたところは、とことん狙われてしまうってのがあるあるですね。

これを前提にして、以下対応です。

プラグインのインストール&有効化

利用しているテーマやプラグインで「timthumb.php」が使われているかどうか。

それを検出するプラグインがあります。

早速、インストールしましょう。

WordPressの管理画面から、「プラグイン」→「新規追加」で「TimThumb Vulnerability Scanner」と入力してプラグインを検索します。

下の画面が表示されるので「いますぐインストール」を押します。

インストールしたら、有効化で完了です。

※FTPからファイルをアップロードされたい場合は、こちらからzipファイルをダウンロードできます。

操作はこんな感じです

インストールすると、WordPressの管理画面の「ツール」に

「Timthumb Scanner」が表示されますので、クリックしましょう。

下の画面に移動します。

Scan!をクリックして、「wp-content」以下ファイルで「timthumb.php」が使われていないかどうか、検出しましょう。

OKの場合

下のようになれば、「timthumb.php」は使われていないです。とりあえず現状では「timthumb.php」は存在していません。

NGの場合

下のように表示されれば、注意です。

これはWordPressをスマホに対応させるプラグインファイル内で検出されたんですが、「timthumb.php」が使われてることがわかります。

テーマやプラグインを有効化していなくても検出されるのがこの「TimThumb Vulnerability Scanner」の便利なところですね。

追記:重ね重ねですが、例え「Timthumb.php」が新しいバージョンになって脆弱性が解消されたとしても、一度攻撃対象とされてしまったファイルは、狙われ続けます。

そういった意味でも、個人的には使い続けるのはオススメしないです。

「timthumb.php」を使ったものが検出されたら

だいたい「timthumb.php」が検出されるのが、テーマとプラグインだとおもいます。

WordPress.orgからダウンロードされたものであれば、アップグレードで解消される場合もありますので、アップグレードしましょう。

それでも解消されないのであれば、素直に削除がベストだと考えます。

WordPress.orgで公式に配布されているものでも100%安心はできない

以下、私が感じていることを書きますと・・・。

ちなみに上記で検出された「verve mobile plugin」はWordPress.orgで現在も配布されています。

「timthumb.php」は使用禁止としているはずなのに、(禁止はされていないか・・・私はつかいませんけど)

公式で配布されているプラグインであるにも関わらず、脆弱性を突かれる可能性があるものが存在することになりますね。

「公式だから安全」という認識は間違いだと思います。

私個人的には、何でも人が作ったものに100%の信頼はしていません。過信は禁物だと思っています。

新しいテーマやプラグインを有効化する前に実行しています

先ほども触れましたが、「TimThumb Vulnerability Scanner」は「wp-content」フォルダ以下のフォルダ・ファイルを検査対象にしているので、有効化していないテーマやプラグインも検出してくれます。

私は、新しいテーマやプラグインをインストールした際には必ず実行するようにしています。

そもそも「timthumb.php」を使ってテーマやプラグインを開発しない、使わないのが当たり前となっている(私の周辺では)のですが、開発者の技術レベルはまちまちなので、こちらも「まあ大丈夫だろう」と過信することがないようにしたいですね。

WordPressを「安全に使用するには」

WordPressを安全に使用するには、現状ではWordPressにデフォルトで付属しているテーマ(今のWordPressのバージョンだったら「Twenty Ten,Twenty Eleven」など)を使われるのがベストだと思います。

ただし、これをカスタマイズする、となると話は変わりますが・・・(今回の話題で言うとカスタマイズする人がtimthumb.phpを使ってしまったら、それは即座に危険なものに早変わりするという意味です)

ただ、確実に安全なものなんて恒久的ではなく、巷のセキュリティについての最新情報によっては途端に脆弱になってしまう可能性もありますよね。肝心なのは、そういった「最新のセキュリティ情報に気を配り続ける必要がある」ということだと思います。

WordPressを「安全にカスタマイズ・提供できる技術」が求められる

テーマなりプラグインなり、WordPressをカスタマイズできるかたは巷にとてもたくさんいらっしゃる中で、どうしても技術のばらつきがあるのはしょうがないかな、とは思います。

もし、「WordPressでWebサイトを作りたい!」と思って、自力で頑張るにしても、どこかの業者に依頼するにしても、WordPressのセキュリティ関連の技術も把握・習得しないといけないですね。(業者に依頼する場合でしたら、業者が把握していればいいことでしょうけども・・・)

やっぱりカンファレンスや勉強会などのイベントに積極的に参加することは、巷のセキュリティ状況以外にも思わぬ最新情報がキャッチできます。そういった知識の広がりもあるので、個人的にはオススメです^^

「WordPressは危険」という言葉の独り歩きだけは避けたい思いはあります

巷の「やばいよ、やばいよ」の言葉の一人歩きのおかげで「無料のWordPressテーマやプラグインは、総じて危険だ」

それがもっと膨らんで「結局WordPressはヤバイの?」

みたいな大枠で捉えられるのはどうだろうな~、それは・・・まあないよな~と思っています。(そんな方はいないか・・^^;)

無料でも、非公式でもいいものはいい。有料でも、公式でもダメなものは、ダメですね。

個人的に思います。

私もWordPress.orgに公式に登録しているプラグインがあります。

開発前段階でも十分に情報収集を行い、もちろんセキュリティチェックもリリース前に十分にした後のリリースです。

(これからもプラグインはドンドン出していく予定です)

WordPressのカスタマイズやプラグイン開発を仕事としている立場として、なんとなく気になったので書きました。

私も勉強中の身として、改めて真剣に考えようと思いました。

というわけで、WordPressの脆弱性について少しでもお役に立てましたら幸いです。

著者:bouya Imamura