CVE-2025-12118: CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in kevingillispie Schema Scalpel
The Schema Scalpel plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the post title in all versions up to, and including, 1.6.1 due to insufficient input sanitization and output escaping when outputting user-supplied data into JSON-LD schema markup. 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.
AI Analysis
Technical Summary
CVE-2025-12118 identifies a stored Cross-Site Scripting (XSS) vulnerability in the Schema Scalpel plugin for WordPress, affecting all versions up to and including 1.6.1. The root cause is insufficient sanitization and escaping of user-supplied post titles when these are embedded into JSON-LD schema markup on web pages. JSON-LD is commonly used to provide structured data to search engines, and in this case, the plugin outputs the post title directly into the JSON-LD without properly neutralizing potentially malicious input. An attacker with Contributor-level or higher privileges can inject arbitrary JavaScript code into the post title, which is then stored persistently and executed in the browsers of any users viewing the affected page. This stored XSS can lead to session hijacking, credential theft, defacement, or pivoting to other attacks. The vulnerability has a CVSS 3.1 base score of 6.4, reflecting a medium severity with network attack vector, low complexity, privileges required, no user interaction, and a scope change due to the potential impact on other users. No public exploits have been reported yet, but the vulnerability is publicly disclosed and should be treated seriously. The plugin is widely used in WordPress environments, which are prevalent in many European organizations for content management and e-commerce. The vulnerability highlights the risks of insufficient input validation in plugins that integrate user content into structured data formats.
Potential Impact
For European organizations, this vulnerability poses a significant risk to the confidentiality and integrity of web applications running WordPress with the Schema Scalpel plugin. Attackers with Contributor-level access can inject malicious scripts that execute in the browsers of site visitors, potentially leading to session hijacking, theft of sensitive information, unauthorized actions on behalf of users, and reputational damage. This can affect customer trust and lead to regulatory scrutiny under GDPR if personal data is compromised. The persistent nature of stored XSS means that the malicious payload remains active until removed, increasing the window of exposure. Organizations relying on WordPress for public-facing websites, blogs, or e-commerce platforms are particularly vulnerable. The attack vector requires authentication but no user interaction, making it easier for insiders or compromised accounts to exploit. The medium severity score reflects a moderate but non-trivial risk that should be addressed promptly to prevent escalation or chaining with other vulnerabilities.
Mitigation Recommendations
1. Monitor for and apply official patches or updates from the Schema Scalpel plugin vendor as soon as they become available. 2. Until a patch is released, restrict Contributor-level and higher privileges to trusted users only to reduce the risk of malicious input. 3. Implement manual input validation and sanitization on post titles, ensuring that any user-supplied content is properly escaped before being embedded into JSON-LD schema markup. 4. Use Web Application Firewalls (WAFs) with custom rules to detect and block suspicious script injection patterns in post titles or JSON-LD outputs. 5. Conduct regular security audits and code reviews of WordPress plugins, especially those handling user-generated content in structured data formats. 6. Educate content contributors about the risks of injecting scripts and enforce strict content policies. 7. Employ Content Security Policy (CSP) headers to restrict the execution of unauthorized scripts on web pages. 8. Monitor logs and user activity for signs of exploitation attempts or unusual behavior from users with Contributor or higher roles.
Affected Countries
Germany, United Kingdom, France, Netherlands, Italy, Spain, Poland, Sweden
CVE-2025-12118: CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in kevingillispie Schema Scalpel
Description
The Schema Scalpel plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the post title in all versions up to, and including, 1.6.1 due to insufficient input sanitization and output escaping when outputting user-supplied data into JSON-LD schema markup. 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.
AI-Powered Analysis
Technical Analysis
CVE-2025-12118 identifies a stored Cross-Site Scripting (XSS) vulnerability in the Schema Scalpel plugin for WordPress, affecting all versions up to and including 1.6.1. The root cause is insufficient sanitization and escaping of user-supplied post titles when these are embedded into JSON-LD schema markup on web pages. JSON-LD is commonly used to provide structured data to search engines, and in this case, the plugin outputs the post title directly into the JSON-LD without properly neutralizing potentially malicious input. An attacker with Contributor-level or higher privileges can inject arbitrary JavaScript code into the post title, which is then stored persistently and executed in the browsers of any users viewing the affected page. This stored XSS can lead to session hijacking, credential theft, defacement, or pivoting to other attacks. The vulnerability has a CVSS 3.1 base score of 6.4, reflecting a medium severity with network attack vector, low complexity, privileges required, no user interaction, and a scope change due to the potential impact on other users. No public exploits have been reported yet, but the vulnerability is publicly disclosed and should be treated seriously. The plugin is widely used in WordPress environments, which are prevalent in many European organizations for content management and e-commerce. The vulnerability highlights the risks of insufficient input validation in plugins that integrate user content into structured data formats.
Potential Impact
For European organizations, this vulnerability poses a significant risk to the confidentiality and integrity of web applications running WordPress with the Schema Scalpel plugin. Attackers with Contributor-level access can inject malicious scripts that execute in the browsers of site visitors, potentially leading to session hijacking, theft of sensitive information, unauthorized actions on behalf of users, and reputational damage. This can affect customer trust and lead to regulatory scrutiny under GDPR if personal data is compromised. The persistent nature of stored XSS means that the malicious payload remains active until removed, increasing the window of exposure. Organizations relying on WordPress for public-facing websites, blogs, or e-commerce platforms are particularly vulnerable. The attack vector requires authentication but no user interaction, making it easier for insiders or compromised accounts to exploit. The medium severity score reflects a moderate but non-trivial risk that should be addressed promptly to prevent escalation or chaining with other vulnerabilities.
Mitigation Recommendations
1. Monitor for and apply official patches or updates from the Schema Scalpel plugin vendor as soon as they become available. 2. Until a patch is released, restrict Contributor-level and higher privileges to trusted users only to reduce the risk of malicious input. 3. Implement manual input validation and sanitization on post titles, ensuring that any user-supplied content is properly escaped before being embedded into JSON-LD schema markup. 4. Use Web Application Firewalls (WAFs) with custom rules to detect and block suspicious script injection patterns in post titles or JSON-LD outputs. 5. Conduct regular security audits and code reviews of WordPress plugins, especially those handling user-generated content in structured data formats. 6. Educate content contributors about the risks of injecting scripts and enforce strict content policies. 7. Employ Content Security Policy (CSP) headers to restrict the execution of unauthorized scripts on web pages. 8. Monitor logs and user activity for signs of exploitation attempts or unusual behavior from users with Contributor or higher roles.
Affected Countries
For access to advanced analysis and higher rate limits, contact root@offseq.com
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- Wordfence
- Date Reserved
- 2025-10-23T16:07:37.624Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 69058f8066e0c23159a8ccff
Added to database: 11/1/2025, 4:41:36 AM
Last enriched: 11/1/2025, 4:49:59 AM
Last updated: 11/1/2025, 1:26:10 PM
Views: 9
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Related Threats
CVE-2025-36367: CWE-862 Missing Authorization
HighCVE-2025-6990: CWE-94 Improper Control of Generation of Code ('Code Injection') in hogash KALLYAS - Creative eCommerce Multi-Purpose WordPress Theme
HighCVE-2025-6988: CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in hogash KALLYAS - Creative eCommerce Multi-Purpose WordPress Theme
MediumCVE-2025-6574: CWE-639 Authorization Bypass Through User-Controlled Key in aonetheme Service Finder Bookings
HighCVE-2025-12171: CWE-434 Unrestricted Upload of File with Dangerous Type in anthonyeden RESTful Content Syndication
HighActions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need enhanced features?
Contact root@offseq.com for Pro access with improved analysis and higher rate limits.