Offload, AI & Optimize with Cloudflare Images <= 1.10.2 - Authenticated (Author+) Remote Code Execution via 'api-key' / 'account-id' Parameters in cf_images_do_setup AJAX Action
Description
The Offload, AI & Optimize with Cloudflare Images plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1.10.2 via the 'account-id' parameter parameter. This is due to insufficient privilege enforcement on the cf_images_do_setup AJAX handler, which requires only the upload_files capability (Author+) rather than manage_options before writing to wp-config.php, combined with the absence of single-quote escaping — sanitize_text_field() does not strip single quotes, and filter_input(INPUT_POST) bypasses wp_magic_quotes() slashing — allowing a single quote in the account-id or api-key parameter to break out of the single-quoted PHP string literal in the write_config() define() statement. This makes it possible for authenticated attackers, with author-level access and above, to execute code on the server. This is possible because the 'cf-images-nonce' nonce required by the AJAX handler is exposed to all Author-level and above users on wp-admin/upload.php via the CFImages JavaScript object, meaning any upload-capable user can satisfy the nonce check and reach the vulnerable wp-config.php write path.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected products
1- Range: <=1.10.2
Patches
Vulnerability mechanics
References
6- plugins.trac.wordpress.org/browser/cf-images/tags/1.10.1/app/class-media.phpmitre
- plugins.trac.wordpress.org/browser/cf-images/tags/1.10.1/app/class-settings.phpmitre
- plugins.trac.wordpress.org/browser/cf-images/tags/1.10.1/app/class-settings.phpmitre
- plugins.trac.wordpress.org/browser/cf-images/tags/1.10.1/app/traits/trait-ajax.phpmitre
- plugins.trac.wordpress.org/changesetmitre
- www.wordfence.com/threat-intel/vulnerabilities/id/a772041e-015e-48e8-9fab-79f1fcdb265cmitre
News mentions
1- Wordfence Intelligence Weekly WordPress Vulnerability Report (June 15, 2026 to June 21, 2026)Wordfence Blog · Jun 25, 2026