ワードプレスのプラグインyuzo related postsには脆弱性がありますが、アップデートが公開されていません。yuzo related postsの脆弱性を解決する方法を解説いたします。
yuzo related postsの脆弱性
yuzo related posts は、お勧めの記事を表示するためのプラグインで、日本でもかなりの数のサイト様が利用されていますが、データベースに任意のスクリプトを埋め込む脆弱性が存在します。
しかし、製作者が開発をやめてしまったため、パッチも公開されず、ワードプレスの公式サイトからダウンロードが停止されました。
この為脆弱性の解決には、プラグインの停止と削除か、手作業での脆弱性をふさぐしか方法はありません。
※ちなみにこのプラグインのダウンロードは、公式以外のGithubなどのサイトからは可能ですが出所が公式ではないため、何らかの不正なコードが含まれている可能性もありますのでご注意くださいましたら幸いです。
yuzo related postsの脆弱性を手作業でふさぐ
yuzo related postsの脆弱性は/assets/functions/options.phpファイルの1000行目近辺の下記のコード部分にあります。
このコードでは、is_admin() で、管理画面の中のコードであるなら設定の保存を通すという形になり、ログインしていなくてもプラグインの設定を書き換えることができる形になっています。
この設定に、任意の不正なコードを埋め込むこともできます。
function __construct(){ global $if_utils; $this->utils = $if_utils; if( is_admin() ) self::configuration_plugin(); else self::parameters(); }
if( is_admin() ) を下記のように書き換えることで管理者のみにプラグインの設定を変えることができるようにし、当面、脆弱性を回避することができます。
if( is_admin() ) → if( is_admin() && current_user_can( ‘administrator’ ))