Skip to content →

WordPress Popular Postsでサムネイルを表示している方は要注意!

WordPress Popular Postsは、人気記事の一覧を生成してくれる有名なプラグインです。とても使い勝手のいいプラグインなのですが、記事とともにサムネイルを表示している場合は要注意。脆弱性があります。

timthumb.phpに脆弱性アリ

WordPress Popular Postsではサムネイルを表示させる際、timthumb.phpというサムネイルを生成できるライブラリを使っています。このtimthumb.phpに脆弱性が見つかっています。

この脆弱性により、第三者が任意のPHPコードをTimThumbキャッシュディレクトリにアップロードでき、そのコードを実行されてしまいます。

timthumb.php もしくは thumb.php が無くても動作するならこのファイルをサイトから削除するようおすすめします。もし使っていないテーマやプラグインの中にこのファイルがあったら、そのテーマやプラグインのディレクトリごと削除したほうがいいでしょう。

引用元:WordPressのテーマやプラグインでtimthumb.phpをお使いの方は脆弱性が見つかったのでご注意!

そのまま使い続けるのは危険です。

サムネイル表示部分を修正

まずplugin→wordpress-popular-postsフォルダの中にある、wordpress-popular-posts.phpを修正します。

アイキャッチ画像をサムネイル表示している場合は1065行目にある

$thumb .= "<img src=¥"". $this->pluginDir ."/timthumb.php?src={$path}&amp;h={$tbHeight}&amp;w={$tbWidth}¥" width=¥"{$tbWidth}¥" height=¥"{$tbHeight}¥" alt=¥"{$title}¥" border=¥"0¥" class=¥"wpp-thumbnail wpp_fi¥" />";

この部分を修正して

$thumb .= "<img src=¥"{$path}¥" width=¥"60¥" height=¥"40¥" alt=¥"{$title}¥" border=¥"0¥" />";

のように変更すれば、timthumb.phpを使わずに表示する事ができます。

ただし、アイキャッチ画像のサイズが大きい場合は自前でGD関数などを使って、縮小させるなどの対応が必要です。

[sc name=”engeneer”]

Published in ビジネスハック 開発奮闘記

14 Comments

  1. 匿名 匿名

    記事通り修正したところ、以下の様なエラーが表示されてしまいました。Parse error: syntax error, unexpected ‘{‘ in (省略)/wordpress-popular-posts/wordpress-popular-posts.php on line 1078
    どう対応すべきか途方に暮れています。是非ご教示ください。

    • plusplus01 plusplus01

      すみません、推測でしかわかりませんが、おそらく余計な かっこ を削除してしまったか、バージョンが違うためエラーが出ているのではないかと思われます。