WP Compress – Instant Performance & Speed Optimization に脆弱性 — CVE-2026-104755
いま何をすべきか
WP Compress – Instant Performance & Speed Optimization を 7.26.00 以降に更新してください。
影響を受けるバージョン
- 7.25.00 以下のすべて
対象: プラグイン「WP Compress – Instant Performance & Speed Optimization」(wp-compress-image-optimizer)
何が起きるのか
The WP Compress – Instant Performance & Speed Optimization plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 7.25.00 The vulnerability exists because the `start_comms` dispatcher (`wps_ic_comms::start_comms`), hooked on every front-end request, gates access only by comparing the caller-supplied `apikey` parameter against the stored plugin API key with no WordPress capability check and no nonce verification, then passes the unvalidated `group`, `setting`, and `value` parameters directly to `change_setting()`, which writes them into the `WPS_IC_SETTINGS` option without an allow-list. This makes it possible for unauthenticated attackers to write arbitrary permission keys into the plugin's settings, causing `wps_ic_users::checkAndAddCaps()` to grant any WordPress role — including Subscriber — the `manage_wpc_settings` capability and thereby achieve plugin-administrator-equivalent control over the plugin's optimization, CDN, and critical-CSS surfaces. The API key required to pass the authorization check can itself be obtained without authentication via the `wpc_send_critical_remote` nopriv AJAX action: when the external critical-CSS service returns an `apiResults` field, `initCritical()` echoes the stored plugin API key back to the caller in a `wp_send_json_success` response, completing the exploit chain entirely without a WordPress login.
ここから先の選択肢
1. 自分たちで対応する
更新の手順、バックアップの取り方、壊れたときの戻し方をまとめています。
2. いまの制作会社・保守業者に頼む
WP Compress – Instant Performance & Speed Optimization を使っているかどうかを含めて確認を依頼してください。 無料診断を実行すると、そのまま渡せる依頼文を作れます。
3. 相談先がない・自分では難しい
連絡が取れる相手がいない、管理画面に入れない、侵入された疑いがある。 そうした場合はご相談ください。
出典
- https://plugins.trac.wordpress.org/browser/wp-compress-image-optimizer/tags/7.10.03/addons/criticalCss/criticalCss.php#L409
- https://plugins.trac.wordpress.org/browser/wp-compress-image-optimizer/tags/7.10.03/classes/ajax.class.php#L816
- https://plugins.trac.wordpress.org/browser/wp-compress-image-optimizer/tags/7.10.03/classes/comms.class.php#L1042
- https://plugins.trac.wordpress.org/browser/wp-compress-image-optimizer/tags/7.10.03/classes/comms.class.php#L49
- https://plugins.trac.wordpress.org/browser/wp-compress-image-optimizer/tags/7.10.03/classes/users.class.php#L30
- https://plugins.trac.wordpress.org/changeset?reponame=&new=3734610%40wp-compress-image-optimizer%2Ftags%2F7.26.00&old=3723132%40wp-compress-image-optimizer%2Ftags%2F7.25.00