Supply Chain Compromise of Ninja Tables Pro via Malicious Update
Ninja Tables Pro version 5.2.11 was compromised via a supply chain attack involving a decommissioned update server that distributed a tampered plugin build containing a PHP backdoor.
CVE search metadata
CVE search record: CVE-2026-73533. Severity: critical. CVSS: 9.8. KEV: no. Product: Ninja Tables Pro (5.2.11). Brief: Supply Chain Compromise of Ninja Tables Pro via Malicious Update. Brief link: https://feed.craftedsignal.io/briefs/2026-08-ninja-tables-backdoor/
Ninja Tables Pro version 5.2.11 was compromised through a supply chain attack involving a decommissioned update server. This server was leveraged to distribute a tampered plugin build to unsuspecting users. The malicious build contains a rogue PHP file, located at app/Library/updater/NinjaTableDataSync.php, which facilitates unauthorized access by establishing a backdoor REST API endpoint.
Once installed, the malicious code performs several actions to ensure persistence and control over the compromised WordPress environment. It drops persistent PHP files within the 'mu-plugins' and 'uploads' directories, creates a passwordless administrator account, and registers scheduled tasks that persist even if the primary plugin is removed. Defenders must audit their WordPress installations for the presence of this specific file and check for unauthorized administrator accounts or unrecognized files in the 'mu-plugins' directory.
Attack Chain
- Attacker gains control of or spoofs a decommissioned update server associated with the Ninja Tables plugin.
- The compromised server pushes a tampered version of the Ninja Tables Pro 5.2.11 plugin to clients.
- The plugin installation executes the payload, dropping the malicious file app/Library/updater/NinjaTableDataSync.php.
- The malicious PHP code activates a backdoor REST API endpoint to receive external commands.
- The backdoor drops additional persistent PHP payloads into the WordPress 'mu-plugins' and 'uploads' folders.
- The script creates a new, passwordless administrator account to ensure future access.
- The script registers scheduled tasks (cron jobs) to maintain persistence across plugin updates or removals.
- The attacker uses the established backdoor and administrator account to facilitate ongoing unauthorized access and system manipulation.
Impact
The vulnerability allows for full, unauthenticated administrative control over the affected WordPress environment. This enables the attacker to exfiltrate data, modify site content, or use the compromised site as a platform for further attacks. Given the nature of the persistence mechanisms, cleanup requires manual removal of malicious files and database entries beyond simply updating or deleting the affected plugin.
Recommendation
- Perform a file integrity audit on all WordPress installations using Ninja Tables Pro to identify the existence of app/Library/updater/NinjaTableDataSync.php.
- Audit the 'mu-plugins' directory for any unauthorized PHP files that were not manually installed by your organization.
- Review all WordPress user accounts for suspicious, passwordless, or unexpected administrator-level accounts.
- Remove any scheduled tasks (WP-Cron) associated with the Ninja Tables plugin and verify no other rogue tasks remain.
- Use the Sigma rule provided below to monitor for the creation or execution of files within the 'mu-plugins' path, as this is a common persistence location for web-based attacks.
Immediate actions
Scan all web server directories for the existence of app/Library/updater/NinjaTableDataSync.php.
Threat Hunt
Search for recently created or modified files in the /wp-content/mu-plugins/ directory.
Data: File system logs / FIM logs
Mitigations
Remove Ninja Tables Pro 5.2.11 and perform a clean install from a verified, known-good source.
CVE-2026-73533
Detection coverage 1
Detect Suspicious File Creation in mu-plugins
highDetects the creation of PHP files in the mu-plugins directory, a common persistence technique for WordPress backdoors.
Detection queries are available on the platform. Get full rules →