php.bkdr.gen: firma generica, e i falsi positivi documentati
php.bkdr.gen è la firma generica per backdoor prodotta da regole automatiche, riconoscibili dal segmento AUTO nell'identificativo. Nel corpus di misura di WPsec.it dell'agosto 2026 compare su 11 domini e 6 server, con il 58% dei file dentro le cartelle di WordPress e una vita mediana di 7 giorni prima del rilevamento. È anche la famiglia per cui esistono falsi positivi documentati pubblicamente dal fornitore e dagli sviluppatori di software legittimo: va verificata, non cancellata a occhi chiusi.
Famiglia: Backdoor generica da firma automatica · Anche noto come: bkdr.gen, mlw.heur, AUTO · Aggiornato il 1 settembre 2026
Le stringhe esatte
Se hai trovato una di queste stringhe sul tuo sito, sei nella pagina giusta.
php.bkdr.genSMW-BLKH-SA-CLOUDAV-php.bkdr.genphp.mlw.heurbkdr.gen-AUTO
Dove si trova
- Dentro wp-content/plugins nel 31% dei casi e nelle cartelle fuori da WordPress nel 42%
- Con nome di senso compiuto nella metà dei rilevamenti: è la firma che scatta più spesso su file dal nome normale
- Con vita breve: la mediana di 7 giorni fra comparsa e rilevamento è la più bassa del corpus, segno che la regola automatica intercetta varianti fresche
Cosa fa
- Quando è un vero positivo, si comporta come una backdoor generica: esecuzione di codice ricevuto da una richiesta.
- Quando è un falso positivo, il file è legittimo e la regola automatica ha reagito a un costrutto sospetto ma lecito, per esempio un tracker che scrive un'immagine o un file di traduzione con stringhe insolite.
- In entrambi i casi la quarantena automatica dell'hosting può svuotare il file: se era legittimo, il sito si rompe.
Come verificare
Comandi di sola lettura: non modificano nulla. Sostituisci ESEMPIO.it con il tuo dominio ed esegui dalla radice del sito.
Verifica se il file appartiene a un componente ufficiale e se corrisponde all'originale
wp core verify-checksums; wp plugin verify-checksums --all; wp theme verify-checksums --all 2>/dev/nullSe il file è di un plugin premium, confrontalo con la copia scaricata dal fornitore
diff <(md5sum PERCORSO/segnalato.php | cut -d' ' -f1) <(md5sum COPIA_ORIGINALE/segnalato.php | cut -d' ' -f1) && echo identicoCerca nel file i costrutti che rendono vero il positivo
grep -nE '(eval|assert|system|exec|shell_exec|passthru)\s*\(|base64_decode\s*\(\s*\$|\$_(GET|POST|COOKIE|REQUEST)' PERCORSO/segnalato.php | head
Cosa non basta fare
- Cancellare il file perché lo dice l'email: se era un file legittimo di un plugin in uso, il sito smette di funzionare e la vulnerabilità vera, se c'è, resta.
- Ignorare il rilevamento perché hai letto che questa firma dà falsi positivi: nel corpus era una backdoor vera nella grande maggioranza dei casi.
- Chiedere all'hosting di aggiungere un'eccezione senza aver verificato il file.
Cosa fare
- Stabilisci prima a chi appartiene il file: core, plugin del repository, plugin premium, tema, o nessuno di questi. Nell'ultimo caso è quasi certamente un positivo vero.
- Se appartiene a un componente noto, confronta la somma di controllo con l'originale: identico vuol dire falso positivo, diverso vuol dire file modificato.
- Con un falso positivo confermato, chiedi all'hosting di ripristinare il file dalla quarantena e segnalalo al fornitore dell'antivirus.
- Con un positivo vero, procedi come per ogni backdoor: finestra temporale, altri artefatti, vettore di ingresso.