Migration, Backup, Staging – WPvivid Backup & Migration <= 0.9.116 - Authenticated (Administrator+) Arbitrary File Upload
Description
Authenticated administrators can upload arbitrary files via the WPvivid Backup plugin, leading to RCE on NGINX servers.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Authenticated administrators can upload arbitrary files via the WPvivid Backup plugin, leading to RCE on NGINX servers.
Vulnerability
The Migration, Backup, Staging – WPvivid Backup & Migration plugin for WordPress is vulnerable to arbitrary file uploads due to missing file type validation in the wpvivid_upload_import_files function. All versions up to and including 0.9.116 are affected [1]. An attacker with Administrator-level access can upload files without proper extension or MIME type checks.
Exploitation
An authenticated attacker with Administrator-level access can exploit the missing file type validation in the wpvivid_upload_import_files function. The attacker uploads a malicious file (e.g., a PHP web shell) through the plugin's import functionality. No special network position other than being logged into the WordPress admin panel is required. The uploaded file is placed in a folder where, on NGINX servers, there is no .htaccess protection, allowing direct access to the uploaded file.
Impact
Successful exploitation allows the attacker to upload arbitrary files, including executable PHP code, to the server. This can lead to remote code execution, enabling full compromise of the WordPress site. The impact is limited by the server type: uploaded files are only accessible on WordPress instances running on the NGINX web server, as the existing .htaccess within the target upload folder prevents access on Apache servers.
Mitigation
A patched version, 0.9.127, is now available as of the plugin's last updated date 2026-05-14 [1]. Users should update to version 0.9.127 or later. For users unable to update immediately, restricting Administrator-level access to trusted users only may reduce risk, but does not fully mitigate the vulnerability. The plugin is not listed in the CISA KEV at the time of publication.
AI Insight generated on May 23, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
3- Range: <=0.9.116
- wpvividplugins/WPvivid — Backup, Migration & Stagingv5Range: 0
Patches
1r3320877Vulnerability mechanics
Root cause
"The plugin fails to validate uploaded file types in the 'wpvivid_upload_import_files' function."
Attack vector
An authenticated attacker with Administrator-level access can exploit this vulnerability. The attacker needs to upload a file through the plugin's interface. The missing file type validation allows for arbitrary file uploads, which could lead to remote code execution on the server. This attack is only effective on WordPress instances running the NGINX web server, as Apache servers are protected by .htaccess rules [ref_id=1].
Affected code
The vulnerability exists in the 'wpvivid_upload_import_files' function within the WPvivid Backup & Migration plugin. This function is responsible for handling file uploads and lacks sufficient validation to prevent the upload of malicious or arbitrary file types.
What the fix does
The patch, identified by [patch_id=1718082], addresses the vulnerability by implementing proper file type validation within the 'wpvivid_upload_import_files' function. This ensures that only permitted file types can be uploaded, preventing the arbitrary file upload that could lead to remote code execution.
Preconditions
- authThe attacker must have Administrator-level access or higher.
- configThe WordPress instance must be running on the NGINX web server.
Generated on Jun 1, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
6- plugins.trac.wordpress.org/browser/wpvivid-backuprestore/trunk/includes/class-wpvivid-export-import.phpmitre
- plugins.trac.wordpress.org/browser/wpvivid-backuprestore/trunk/includes/class-wpvivid-export-import.phpmitre
- plugins.trac.wordpress.org/browser/wpvivid-backuprestore/trunk/includes/class-wpvivid-export-import.phpmitre
- plugins.trac.wordpress.org/changeset/3320877/mitre
- ryankozak.com/posts/cve-2025-5961/mitre
- www.wordfence.com/threat-intel/vulnerabilities/id/d8ceb4a1-9354-4ed3-9a8f-45ba2057a810mitre
News mentions
0No linked articles in our index yet.