Tutti gli articoli
Bonifica malware6 min di letturaTeam WPsec.it

Utenti admin sconosciuti WordPress: come rimuoverli e chiudere la backdoor

Trovato un utente admin WordPress che non hai creato? Guida tecnica per verificare, rimuovere e impedire che vengano ricreati automaticamente da backdoor.

Condividi
Utenti admin sconosciuti WordPress: come rimuoverli e chiudere la backdoor

Trovare un utente admin WordPress che non hai creato è quasi sempre un segnale di compromissione. Prima di cancellarlo, verifica se viene ricreato automaticamente da una backdoor ancora attiva: rimuovere l'utente senza chiudere la backdoor è inutile.

Un utente admin sconosciuto in WordPress significa che qualcuno ha ottenuto accesso al tuo sito con privilegi di amministratore. Può essere avvenuto tramite una vulnerabilità in un plugin, una SQL injection nel database, credenziali rubate, o un plugin nulled che conteneva codice malevolo.

Il passo sbagliato più comune è cancellare subito l'utente dal pannello e considerare il problema risolto. Non funziona: se la backdoor che ha creato quell'utente è ancora attiva, il nuovo admin riapparirà in poche ore o al prossimo cron WordPress.

Come verificare la lista utenti admin completa

Dal pannello WordPress vai in Utenti > Tutti gli utenti e filtra per ruolo Amministratore. Ma questa vista non mostra tutto. Da WP-CLI hai un controllo più preciso:

wp user list --role=administrator --format=table

Questo mostra ID, login, email, data di registrazione e stato. Controlla:

  • utenti con email generiche ([email protected], [email protected], [email protected])
  • login tipo wpsupport, seoexpert, developer, wp_backup
  • utenti registrati in date che non corrispondono a nessuna tua operazione
  • utenti con data di registrazione molto recente (ore o giorni fa)

Per una verifica più approfondita, estrai anche i metadati utente:

wp user list --role=administrator --fields=ID,user_login,user_email,user_registered --format=csv

Salva questo output come baseline. Se hai un backup recente, confronta la lista attuale con quella precedente.

Come capire se l'utente viene ricreato da una backdoor

Prima di eliminare l'utente, verifica se viene ricreato. Il modo più semplice è cambiare la password dell'utente sospetto (non eliminarlo) e aspettare 30-60 minuti. Se la password viene reimpostata o l'utente viene ricreato, c'è una backdoor attiva.

Backdoor che ricreano utenti admin si trovano tipicamente in questi punti:

Funzioni PHP con hook WordPress:

grep -rn "add_action.*user_register\|wp_insert_user\|add_user_role" \
  wp-content/themes/ wp-content/plugins/ wp-content/mu-plugins/ 2>/dev/null

Cron jobs malevoli:

wp cron event list --format=table

Cerca eventi con nomi casuali o non riconoscibili. I cron malevoli spesso usano nomi come check_update_db, wp_scheduled_task, maintenance_cron che sembrano legittimi.

Database - opzioni con hook:

SELECT option_name, option_value FROM wp_options 
WHERE option_value LIKE '%insert_user%' 
OR option_value LIKE '%user_register%'
OR option_value LIKE '%add_user%';

File nelle mu-plugins:

ls -la wp-content/mu-plugins/

I mu-plugins (must-use plugins) vengono caricati automaticamente ad ogni richiesta WordPress senza bisogno di attivazione. Sono un punto di persistenza ideale per le backdoor: anche se disattivi tutti i plugin normali, i mu-plugins continuano a girare.

Come rimuovere l'utente admin sconosciuto

Dopo aver identificato e rimosso la backdoor che lo ricrea, elimina l'utente:

wp user delete <ID-utente> --reassign=<ID-utente-legittimo>

Sostituisci <ID-utente> con l'ID dell'utente da rimuovere e <ID-utente-legittimo> con l'ID del tuo account amministratore principale. Il parametro --reassign sposta eventuali post e contenuti associati all'utente legittimo invece di eliminarli.

Se non hai WP-CLI, puoi farlo dal database direttamente:

-- Prima trova l'ID dell'utente da rimuovere
SELECT ID, user_login, user_email FROM wp_users WHERE user_login = 'nome-utente-sospetto';

-- Poi elimina utente e relativi metadati
DELETE FROM wp_usermeta WHERE user_id = <ID>;
DELETE FROM wp_users WHERE ID = <ID>;

Dopo l'eliminazione, verifica che non esistano chiavi di sessione attive:

wp user session list <ID-utente-legittimo>
wp user session destroy --all <ID-utente-da-rimuovere>

Come impedire la ricreazione: chiudi il vettore

Rimuovere l'utente è solo la parte visibile. Il lavoro vero è capire come è stato creato e chiudere il vettore.

Scenario 1 - Plugin vulnerabile: controlla la versione di tutti i plugin installati e cerca CVE recenti. Il sito WPScan Vulnerability Database (o Patchstack) ti mostra vulnerabilità note per ogni plugin. Se trovi un plugin con CVE che permette la creazione di utenti non autorizzati, aggiornalo immediatamente o rimuovilo.

Scenario 2 - Plugin nulled: un plugin nulled con backdoor incorporata crea l'utente ad ogni attivazione. Rimuovi il plugin e rimuovi il plugin da tutta la cartella (non solo disattivalo). Leggi plugin nulled come vettore di attacco.

Scenario 3 - Credenziali compromesse: se l'attaccante ha le tue credenziali admin, crea utenti direttamente dalla bacheca o via API. In questo caso la priorità è ruotare tutte le password (WordPress, hosting, FTP, database) e abilitare 2FA.

Scenario 4 - File PHP malevolo: un file PHP in wp-content/uploads/ o wp-content/mu-plugins/ che usa wp_insert_user(). Trova e rimuovi il file, poi controlla che non ci siano altri file simili:

grep -rn "wp_insert_user\|wp_create_user" wp-content/ 2>/dev/null | grep -v ".git"

Rotazione credenziali dopo un utente sconosciuto

Anche dopo aver rimosso l'utente e la backdoor, tratta le credenziali come compromesse:

# Rigenera i SALT WordPress
wp config shuffle-salts

# Cambia password di tutti gli admin
wp user update 1 --user_pass="NuovaPasswordForte!"

Aggiorna anche: password FTP, password database, password cPanel. Se l'attaccante aveva accesso admin, può aver esportato e letto qualsiasi dato nel database, incluse le credenziali di servizi connessi (SMTP, gateway pagamento, API chiavi).

Verifica post-rimozione

Dopo aver fatto tutto:

  1. Attendi 24-48 ore e ricontrolla la lista utenti
  2. Monitora i log di accesso WordPress per login riusciti da IP sconosciuti
  3. Controlla i cron job dopo 24 ore (alcuni backdoor usano cron ritardati)
  4. Verifica che nessun plugin disattivato sia stato riattivato automaticamente

Se l'utente non torna e i log non mostrano accessi anomali, la situazione è sotto controllo. Se torna, c'è ancora una backdoor che non hai trovato - in quel caso è il momento di fare una bonifica completa o richiedere intervento tecnico.


Ho trovato un utente admin con email che non riconosco: cosa faccio prima?

Non eliminarlo subito. Prima cambia la sua password con una stringa casuale lunga (questo blocca l'accesso senza cancellare le tracce). Poi cerca nel database e nei file come è stato creato. Solo dopo aver trovato e rimosso la backdoor, elimina l'utente definitivamente. Se lo elimini subito e la backdoor è ancora attiva, verrà ricreato in poche ore.

L'utente sconosciuto ha ruolo Editor o Author, non Administrator: è meno grave?

È meno grave ma non trascurabile. Un Editor può modificare tutti i post e le pagine, iniettare JavaScript nel contenuto, pubblicare pagine spam. Un Author può pubblicare post. Entrambi possono essere usati per diffondere malware o contenuto SEO spam senza avere accesso alle impostazioni di sistema. Tratta qualsiasi utente non creato da te come un segnale di compromissione e indaga allo stesso modo.

Come faccio ad abilitare il 2FA per prevenire futuri accessi non autorizzati?

Usa un plugin come WP 2FA (gratuito, by Melapress) o Wordfence Login Security. Entrambi supportano app TOTP standard (Google Authenticator, Authy, 1Password). Abilita il 2FA obbligatorio per tutti gli utenti con ruolo Administrator e Editor. Con 2FA attivo, anche se l'attaccante ottiene la password, non può accedere senza il codice temporaneo.

Pubblicato il

Condividi

Scritto dal team WPsec

Team WPsec.it

Bonifica malware, hardening, performance e manutenzione WordPress.

Continua a leggere

Articoli correlati.

WordPress hackerato: guida completa al recupero del sito
Bonifica malware2 maggio 2026

WordPress hackerato: guida completa al recupero del sito

Guida completa per recuperare un sito WordPress hackerato: dalla scoperta alla bonifica, dalla chiusura della vulnerabilità all'hardening finale. Sequenza operativa con comandi e checklist.

11 minTeam WPsec.it
Bonifica malware WordPress: il metodo che usiamo davvero
Bonifica malware23 aprile 2026

Bonifica malware WordPress: il metodo che usiamo davvero

Come affrontiamo concretamente una bonifica WordPress: dall'analisi iniziale al congelamento, dal confronto file alla sostituzione del core, fino al post-intervento. Senza scorciatoie.

7 minTeam WPsec.it