Code Embed <= 2.5.1 - Authenticated (Contributor+) Stored Cross-Site Scripting via Custom Fields
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Cross-site scripting
- Confidentiality · integrity · availability
- Low · Low · None
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-79.
Summary
The Code Embed plugin for WordPress is vulnerable to Stored Cross-Site Scripting via custom field meta values in all versions up to, and including, 2.5.1. This is due to the plugin's sanitization function `sec_check_post_fields()` only running on the `save_post` hook, while WordPress allows custom fields to be added via the `wp_ajax_add_meta` AJAX endpoint without triggering `save_post`. The `ce_filter()` function then outputs these unsanitized meta values directly into page content without escaping. This makes it possible for authenticated attackers, with Contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2026-2512
- 2026-10-03 Alias added: GHSA-j4g5-6g63-3xq4
References
Other 5
- https://www.wordfence.com/threat-intel/vulnerabilities/id/375ed04b-a3cb-4e60-83c8-18bff583aaf4?source=cve
- https://plugins.trac.wordpress.org/browser/simple-embed-code/trunk/includes/add-embeds.php#L84
- https://plugins.trac.wordpress.org/browser/simple-embed-code/trunk/includes/add-embeds.php#L20
- https://plugins.trac.wordpress.org/browser/simple-embed-code/trunk/includes/secure.php#L25
- https://plugins.trac.wordpress.org/changeset/3482994/
More dartiss vulnerabilities
- TI-2026-36621 Draft List - Contributor Stored Cross-Site Scripting via Draft Title in Custom Drafts Template Attributes CVSS 3.1MEDIUM 6.5
- TI-2026-35533 Code Embed - Contributor Stored Cross-Site Scripting via Remote URL Embed CVSS 3.1MEDIUM 6.5
- TI-2026-35534 ShareOpenly has Cross-Site Scripting (XSS) via Missing esc_url() on Shared URL in Content Output CVSS 4.0MEDIUM 5.3
- TI-2026-08001 Draft List <= 2.6.3 - Authenticated (Author+) Stored Cross-Site Scripting via Draft Post Title CVSS 3.1MEDIUM 6.4
- TI-2026-05973 Social Post Embed <= 2.0.1 - Authenticated (Contributor+) Stored Cross-Site Scripting via Threads Embed CVSS 3.1MEDIUM 6.4
- TI-2026-03469 Draft List <= 2.6.2 - Authenticated (Contributor+) Stored Cross-Site Scripting via 'display_name' Parameter CVSS 3.1MEDIUM 6.4
Sources
- CVE-2026-2512 · CVE Program
- CVE-2026-2512 · NVD
- FIRST EPSS
- GHSA-j4g5-6g63-3xq4 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences