CVE-2026-7693
Backup Migration <= 2.1.5.1 - Authenticated (Administrator+) OS Command Injection via 'file' Parameter
The Backup Migration plugin for WordPress is vulnerable to OS Command Injection in all versions up to, and including, 2.1.5.1 due to insufficient sanitization of the file POST parameter on the restoreBackup() AJAX handler. The handler applies esc_attr() — an HTML-context sanitizer that does not strip shell metacharacters — and concatenates the result, unquoted, into a php-cli -f … bmi_restore <file> <remote> command passed to exec(). This makes it possible for authenticated attackers, with Administrator-level access (or any user granted the plugin's do_backups capability) and above, to execute arbitrary OS commands as the web-server user, bypassing WordPress hardening constants such as DISALLOW_FILE_EDIT and DISALLOW_FILE_MODS that would otherwise prevent code execution from the admin UI. This is an incomplete fix of CVE-2023-7002, which patched the same pattern only in the $_POST['url'] path of handleQuickMigration(); the equivalent mitigations (rawurlencode() + explicit shell-metachar replacement + double-quoting in exec()) were never applied to $backupName.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- High
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.2
Backup Migration <= 2.1.5.1 - Authenticated (Administrator+) OS Command Injection via 'file' Parameter
The Backup Migration plugin for WordPress is vulnerable to OS Command Injection in all versions up to, and including, 2.1.5.1 due to insufficient sanitization of the file POST parameter on the restoreBackup() AJAX handler. The handler applies esc_attr() — an HTML-context sanitizer that does not strip shell metacharacters — and concatenates the result, unquoted, into a php-cli -f … bmi_restore <file> <remote> command passed to exec(). This makes it possible for authenticated attackers, with Administrator-level access (or any user granted the plugin's do_backups capability) and above, to execute arbitrary OS commands as the web-server user, bypassing WordPress hardening constants such as DISALLOW_FILE_EDIT and DISALLOW_FILE_MODS that would otherwise prevent code execution from the admin UI. This is an incomplete fix of CVE-2023-7002, which patched the same pattern only in the $_POST['url'] path of handleQuickMigration(); the equivalent mitigations (rawurlencode() + explicit shell-metachar replacement + double-quoting in exec()) were never applied to $backupName.
- Record
CVE-2026-7693- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-77
- Updated
- 2026-11-02
EUVDEUVD-2026-53182
7.2
The Backup Migration plugin for WordPress is vulnerable to OS Command Injection in all versions up to, and including, 2.1.5.1 due to insufficient sanitization of the file POST parameter on the restoreBackup() AJAX handler. The handler applies esc_attr() — an HTML-context sanitizer that does not strip shell metacharacters — and concatenates the result, unquoted, into a php-cli -f … bmi_restore <file> <remote> command passed to exec(). This makes it possible for authenticated attackers, with Administrator-level access (or any user granted the plugin's do_backups capability) and above, to execute arbitrary OS commands as the web-server user, bypassing WordPress hardening constants such as DISALLOW_FILE_EDIT and DISALLOW_FILE_MODS that would otherwise prevent code execution from the admin UI. This is an incomplete fix of CVE-2023-7002, which patched the same pattern only in the $_POST['url'] path of handleQuickMigration(); the equivalent mitigations (rawurlencode() + explicit shell-metachar replacement + double-quoting in exec()) were never applied to $backupName.
- Record
EUVD-2026-53182- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-982q-x59v-3xjj
7.2
The Backup Migration plugin for WordPress is vulnerable to OS Command Injection in all versions...
The Backup Migration plugin for WordPress is vulnerable to OS Command Injection in all versions up to, and including, 2.1.5.1 due to insufficient sanitization of the file POST parameter on the restoreBackup() AJAX handler. The handler applies esc_attr() — an HTML-context sanitizer that does not strip shell metacharacters — and concatenates the result, unquoted, into a php-cli -f … bmi_restore <file> <remote> command passed to exec(). This makes it possible for authenticated attackers, with Administrator-level access (or any user granted the plugin's do_backups capability) and above, to execute arbitrary OS commands as the web-server user, bypassing WordPress hardening constants such as DISALLOW_FILE_EDIT and DISALLOW_FILE_MODS that would otherwise prevent code execution from the admin UI. This is an incomplete fix of CVE-2023-7002, which patched the same pattern only in the $_POST['url'] path of handleQuickMigration(); the equivalent mitigations (rawurlencode() + explicit shell-metachar replacement + double-quoting in exec()) were never applied to $backupName.
- Record
GHSA-982q-x59v-3xjj- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-77
- Updated
- 2026-11-02
NVD
7.2
The Backup Migration plugin for WordPress is vulnerable to OS Command Injection in all versions up to, and including, 2.1.5.1 due to insufficient sanitization of the file POST parameter on the restoreBackup() AJAX handler. The handler applies esc_attr() — an HTML-context sanitizer that does not strip shell metacharacters — and concatenates the result, unquoted, into a php-cli -f … bmi_restore <file> <remote> command passed to exec(). This makes it possible for authenticated attackers, with Administrator-level access (or any user granted the plugin's do_backups capability) and above, to execute arbitrary OS commands as the web-server user, bypassing WordPress hardening constants such as DISALLOW_FILE_EDIT and DISALLOW_FILE_MODS that would otherwise prevent code execution from the admin UI. This is an incomplete fix of CVE-2023-7002, which patched the same pattern only in the $_POST['url'] path of handleQuickMigration(); the equivalent mitigations (rawurlencode() + explicit shell-metachar replacement + double-quoting in exec()) were never applied to $backupName.
- Record
CVE-2026-7693- CVSS 3.1
- 7.2 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-77
- Updated
- 2026-11-02
Affected products
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-7693 is a high vulnerability (CVSS 7.2) in Inisev Backup Migration, published August 5, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.95%, the 87th percentile. No source names a fixed version.
References
wordfence.com/threat-intel/vulnerabilities/id/af6a7052-6dab-42f0-a2af-0cf459d309d7?source=cve
plugins.trac.wordpress.org/browser/backup-backup/trunk/includes/ajax.php
plugins.trac.wordpress.org/browser/backup-backup/tags/2.1.5.1/includes/ajax.php
plugins.trac.wordpress.org/browser/backup-backup/tags/2.1.5.1/includes/initializer.php
plugins.trac.wordpress.org/changeset?new=3540041%40backup-backup%2Ftags%2F2.1.5.2&old=3512153%40backup-backup%2Ftags%2F2.1.5.1
nvd.nist.gov/vuln/detail/CVE-2026-7693
github.com/advisories/GHSA-982q-x59v-3xjj