CVE-2025-8625

9.8 CRITICAL

📋 TL;DR

The Copypress Rest API WordPress plugin versions 1.1 to 1.2 contain a critical remote code execution vulnerability. Unauthenticated attackers can forge JWT tokens using a hard-coded signing key and upload arbitrary files, including PHP scripts, leading to complete server compromise. WordPress sites using vulnerable plugin versions are affected.

💻 Affected Systems

Products:
  • Copypress Rest API WordPress Plugin
Versions: 1.1 to 1.2
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: All installations with vulnerable versions are affected regardless of configuration. The vulnerability exists in the default plugin code.

⚠️ 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

Complete server takeover with attacker gaining full administrative access, installing backdoors, stealing sensitive data, and using the server for further attacks.

🟠

Likely Case

Attackers upload web shells to gain persistent access, deface websites, install cryptocurrency miners, or exfiltrate database contents.

🟢

If Mitigated

With proper network segmentation and file integrity monitoring, impact limited to the affected web server with no lateral movement to other systems.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

The vulnerability is easily exploitable with public proof-of-concept code available. Attackers can automate exploitation across multiple targets.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.3 or later

Vendor Advisory: https://wordpress.org/plugins/copypress-rest-api/#developers

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'Copypress Rest API' and check version. 4. If version is 1.1 or 1.2, update to version 1.3 or later. 5. Verify update completed successfully.

🔧 Temporary Workarounds

Disable vulnerable plugin

linux

Temporarily disable the Copypress Rest API plugin until patched

wp plugin deactivate copypress-rest-api

Restrict API access

all

Block access to the vulnerable REST API endpoints via web server configuration

# Add to .htaccess for Apache:
RewriteRule ^wp-json/copypress/.* - [F,L]

# Add to nginx config:
location ~* ^/wp-json/copypress/ { deny all; }

🧯 If You Can't Patch

  • Remove the plugin entirely if not essential for site functionality
  • Implement web application firewall rules to block requests containing JWT tokens targeting the copyreap_handle_image() function

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel → Plugins → Installed Plugins for Copypress Rest API version. If version is 1.1 or 1.2, the system is vulnerable.

Check Version:

wp plugin get copypress-rest-api --field=version

Verify Fix Applied:

After updating, verify plugin version shows 1.3 or later in WordPress admin panel. Test that the plugin functions correctly without the vulnerable endpoints.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to /wp-json/copypress/v1/image
  • Multiple failed authentication attempts followed by successful JWT token usage
  • Uploads of files with .php extension via the plugin API

Network Indicators:

  • HTTP requests containing JWT tokens with the hard-coded key 'copypress'
  • Traffic patterns showing exploitation attempts from known malicious IPs

SIEM Query:

source="web_server_logs" AND (uri="/wp-json/copypress/v1/image" OR user_agent CONTAINS "copypress") AND (status=200 OR status=201)

🔗 References

📤 Share & Export