Hunt: UpdraftCentral backdoor pushes — 'WordPress/6.4; class-udrpc.php' POSTs, 'keeps option storage tidy' plugins, @example.org 'Site Tools' editors
Across WordPress fleets and hosting logs:
- Access logs:
POST /with User-Agent exactlyWordPress/6.4; class-udrpc.php. Real UpdraftCentral Cloud traffic sendsclass-udrpc.php/2.0; https://teamupdraft.com. Source IPs43.250.53[.]42and2a09:bac5:4e21:2e3c::49b:9, but Patchstack says the attacker rotated infrastructure, so don't rely on IPs alone. Nethemba's grep:grep 'class-udrpc.php"' access.log. - Backdoor triggers: GET requests with a parameter of
_plus 6 hex characters, or 12 hex characters, carrying a 32-character value, followed by a 302 to wp-admin (zgrep -E '[?&](_[0-9a-f]{6}|[0-9a-f]{12})=[^&" ]{32}[& ]'). - UpdraftCentral client log (option
updraftcentral_client_log, last 50 events only):probe.central.updraftplus.com, thenCommand received: plugin.upload_pluginorplugin.delete_plugin. - Files: plugins with the description "Small maintenance toolkit: keeps option storage tidy." or names like
load-stack-35c,text-gantry-eb0,style-bridge-8f5,media-kit-183,boost-kit,cache-smith,site-health-364f, or "Site Health Cache" (the most reused name per Patchstack). Also checkwp-content/upgrade/, where pushed plugins stay even if the install failed. Main-file SHA-256s are in Nethemba's IOC table, for example3c3355f7…209fandbb40f9a8…0801. - Database: options matching
*_sync_token,*_uid,*_installed, orsite_health_364f_ver. Look for users with@example.orgor@example.comemails, display names "Site Tools", "System Team" or "Web Tech", or Editors holdingmanage_optionsorinstall_plugins.
Nethemba publishes a read-only check script (run with wp eval-file check-updraftcentral.php --skip-plugins --skip-themes). Don't "fix" a crashing backdoor; one variant fails only because of a coding bug.
Sources: Nethemba IOCs + script · Patchstack