CVE-2025-57977

7.1 HIGH

📋 TL;DR

A Cross-Site Request Forgery (CSRF) vulnerability in the Flexible PDF Invoices for WooCommerce & WordPress plugin allows attackers to trick authenticated administrators into performing unintended actions. This affects all WordPress sites using the plugin from any version up to 6.0.13. Attackers could modify invoice settings or potentially perform other administrative actions without the victim's knowledge.

💻 Affected Systems

Products:
  • Flexible PDF Invoices for WooCommerce & WordPress
Versions: n/a through 6.0.13
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress with WooCommerce and the vulnerable plugin installed. Only affects administrative users who are authenticated to WordPress.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could reconfigure invoice settings, modify business information, or potentially chain with other vulnerabilities to gain further access to the WordPress site or WooCommerce store.

🟠

Likely Case

Attackers trick administrators into changing invoice templates, payment settings, or business details, causing operational disruption or financial impact.

🟢

If Mitigated

With proper CSRF protections and user awareness, the risk is limited to unsuccessful exploitation attempts that are logged and monitored.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW

CSRF attacks are well-understood and relatively easy to execute. Requires the victim to be logged into WordPress as an administrator and visit a malicious page.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 6.0.14 or later

Vendor Advisory: https://patchstack.com/database/wordpress/plugin/flexible-invoices/vulnerability/wordpress-flexible-pdf-invoices-for-woocommerce-wordpress-plugin-6-0-13-cross-site-request-forgery-csrf-vulnerability?_s_id=cve

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Flexible PDF Invoices for WooCommerce & WordPress'. 4. Click 'Update Now' if available. 5. Alternatively, download version 6.0.14+ from WordPress.org and manually update.

🔧 Temporary Workarounds

Implement CSRF Tokens Manually

all

Add nonce verification to plugin forms if you cannot update immediately

Requires PHP coding knowledge to modify plugin files

Use Security Plugins

all

Install WordPress security plugins that add CSRF protection

🧯 If You Can't Patch

  • Temporarily disable the plugin if not critically needed
  • Implement strict access controls and monitor administrator activity logs

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin > Plugins > Flexible PDF Invoices for WooCommerce & WordPress. If version is 6.0.13 or lower, you are vulnerable.

Check Version:

wp plugin get flexible-invoices --field=version

Verify Fix Applied:

After updating, verify the plugin version shows 6.0.14 or higher in WordPress admin.

📡 Detection & Monitoring

Log Indicators:

  • Unexpected POST requests to /wp-admin/admin.php?page=flexible-invoices from unusual referrers
  • Multiple failed CSRF token validations in WordPress debug logs

Network Indicators:

  • HTTP requests with missing or invalid nonce parameters to invoice-related endpoints

SIEM Query:

source="wordpress" AND (uri_path="/wp-admin/admin.php" AND query_string="page=flexible-invoices") AND http_method="POST" AND NOT referrer CONTAINS yourdomain.com

🔗 References

📤 Share & Export