WordPressは先週、11件の脆弱性に対するパッチをリリースしました。その中には、リモートコード実行(RCE)につながる可能性のある欠陥も含まれています。
「Click2Shell」と名付けられたこの欠陥には、まだCVE識別子が割り当てられていません。WordPressはアドバイザリの中で、特別に細工されたURLを介して悪用されると、非アクティブなテーマが自動的にインストール・プレビューされてしまう可能性があると説明しています。
一見それほど深刻に思えないかもしれませんが、実際はそうではありません。この不具合を発見・報告したpwn.aiによると、非アクティブなテーマがRCEに悪用され得るとのことです。
pwn.aiの説明によれば、この問題はWordPressのテーマプレビューURLに含まれるある値が、テーマAPIと管理者のブラウザ上で動作するJavaScriptとで異なる解釈をされることに起因しています。
「APIはこの値を単純なテーマスラッグへと縮約します。一方ブラウザ側は元の句読点をそのまま保持し、jQueryセレクタの中に組み込んでしまいます」とpwn.aiは説明しています。
これにより、認証されていない攻撃者が、攻撃者の選んだテーマを管理者のサイトに強制的にインストールさせることが可能になります。このテーマは、管理者が気づかないまま、また同意なしに、公式のWordPress.orgカタログから取得されます。
テーマ自体は非アクティブであり本来脅威にはならないはずですが、pwn.aiの調査により、WordPress上には非アクティブな状態でもPHPコード実行に悪用され得るサードパーティ製テーマが40種類以上存在することが判明しました。
WordPressは、たとえ別のテーマがアクティブになっていても、カスタマイザーのプレビュー中にはそれらのPHPコードを読み込んでしまいます。このため攻撃者は、保護されていないインストーラーを悪用し、WordPressサーバーのアカウント権限下で実行される細工済みプラグインパッケージを指定させることが可能になります。
「攻撃者側のWordPressアカウントは一切必要ありません。ログイン済みユーザーが一度サイトを訪問するだけで、攻撃者はそのサイトを乗っ取れてしまいます」とpwn.aiは説明しています。同社はこの脆弱性を標的とした技術的詳細と概念実証(PoC)コードを公開済みです。
pwn.aiはさらに、エクスプロイトの実行中もサイトのメインテーマはアクティブなまま維持されるため、管理者が異常な挙動に気づきにくい点も重要な問題だと指摘しています。
WordPressはこのContent Management SystemのバージョンAlt=”version 7.1.1」でClick2Shellおよび残る10件の脆弱性を修正し、pwn.aiには同社のバグバウンティ制度における上限額である300ドルの報奨金を支払いました。
これらのセキュリティ上の欠陥に対する修正は、古いバージョンのWordPress、具体的にはWordPress 4.7までさかのぼるアップデートにも含まれています。
翻訳元: https://www.securityweek.com/wordpress-patches-click2shell-vulnerability/