The Welcomizer section editor lets Subscribers persist executable PHP
A Subscriber can obtain a valid nonce from directly accessible twiz-ajax.js.php and invoke the savesection handler of twiz_ajax_callback. The handler checks that nonce but not a capability. Attacker-controlled twiz_custom_logic saved with twiz_logic_output later reaches frontend eval(), producing server-side PHP execution. This is authenticated exploitation, not an anonymous upload or a nonce bypass. Authoritative affected range: <= 2.8.1. No fixed release is confirmed in this review.
- Component
- The Welcomizer
- Plugin slug
the-welcomizer- Affected
- <= 2.8.1
- Safe version
- See mitigation notes
- Published
- Sep 19, 2026
This CVE was published Sep 19, 2026 and is one of 1 known issue for this plugin.
Update, patch or deactivate.
No confirmed fixed release. The directory reports version 999.0 while its changelog ends at 2.8.1 with no matching repair. That version marker is not treated as proof of a supported fixed release. Official changelog: https://wordpress.org/plugins/the-welcomizer/#developers . Deactivate the affected functionality pending a confirmed fix. Restrict section changes to authorized administrators and remove eval() of stored user input, replacing custom logic with an allowlisted declarative format. Review stored custom logic for unauthorized changes.
No confirmed safe version is listed. Consider a vendor-supported patch or temporarily restricting the affected functionality while you assess the risk.
Deactivate only when warranted by your risk profile, or when advised by your hosting provider in the limited circumstances where the vulnerability cannot otherwise be mitigated. If you’re unsure which action is appropriate, contact Fused or your hosting provider for guidance.
Technical description
The The Welcomizer plugin for WordPress is vulnerable to Remote Code Execution in all versions up to and including 2.8.1. This is due to missing authorization checks on the twiz_ajax_callback AJAX action's 'savesection' handler combined with the use of eval() to execute user-supplied 'custom logic' code on the frontend. The AJAX handler at twiz-ajax.php verifies a nonce but performs no current_user_can() capability check for the ACTION_SAVE_SECTION case. Furthermore, the nonce is exposed to any authenticated user through the directly-accessible twiz-ajax.js.php file which loads WordPress and outputs the nonce. This makes it possible for authenticated attackers, with Subscriber-level access and above, to inject arbitrary PHP code via the twiz_custom_logic POST parameter when saving a section with output choice 'twiz_logic_output'.
CVE / CNA vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Primary and upstream sources
- NVD record for CVE-2026-4327
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- Wordfence advisory wordfence.com