Quan diverses webs d’un cPanel mostren redireccions, fitxers desconeguts o spam al mateix temps, no les tractis com incidents independents. Comparteixen usuari del sistema, permisos, cron, correu i pla de control. Fins que es demostri el contrari, el límit de l’incident és el compte complet.
Crea un mapa abans de modificar
Inventaria dominis, subdominis, arrels documentals, WordPress, staging, bases de dades, tasques, bústies i còpies. Afegeix la versió PHP, usuari Unix, usuari MySQL, comptes SFTP, remitents i proveïdor DNS de cada web.
Una matriu permet veure relacions que el llistat de dominis amaga. Marca quines arrels comparteixen propietari, quins processos poden escriure fora del seu directori i quines credencials s’han reutilitzat.
Registra l’estat visible de cada web i l’hora. No actualitzis totes les instal·lacions abans de preservar evidència: igualaria dates i faria més difícil distingir propagació de manteniment.
Contén a escala de compte
Atura l’exposició pública i el correu maliciós. Si cal, serveix una pàgina estàtica des d’una ubicació neta. Bloqueja accessos no essencials, revoca sessions i coordina amb el hosting per limitar PHP o trànsit sortint.
No eliminis el compte ni les arrels afectades. Conserva una instantània de fitxers, bases, logs, cron i configuració fora del mateix compte. Calcula hashes i anota dates, propietaris i zona horària. La còpia operativa i l’evidència han d’estar separades.
Rota l’accés al panell, FTP/SFTP, SSH, API, correu, bases i desplegament des d’un dispositiu segur. Revisa també el gestor de fitxers, claus guardades i comptes capaços de restablir contrasenyes.
Identifica la ruta compartida
Comprova si PHP d’una arrel pot escriure en una altra, si existeixen enllaços simbòlics inesperats i si el cron del compte executa scripts dins de diverses webs. Revisa directoris temporals, còpies antigues i fitxers situats directament al directori principal de l’usuari.
Compara indicadors: noms, fragments de codi, hashes, dominis de comandament, usuaris creats i hores. Indicadors comuns suggereixen una font o desplegament compartit; diferències no descarten el mateix accés, perquè l’atacant pot instal·lar eines diferents.
Defineix l’abast segons la capacitat obtinguda. Si es va comprometre cPanel o l’usuari Unix, una web sense fitxers detectats continua exposada. Si només es va explotar un plugin i els permisos estan realment aïllats, l’abast pot reduir-se després de provar-ho.
Avalua dades i còpies
Relaciona cada web amb la seva base i usuari. Busca privilegis excessius, secrets repetits i còpies SQL accessibles per HTTP. Canvia credencials i limita cada usuari a la base necessària.
Les còpies poden estar contaminades o exposar dades. Mou-les fora de l’espai públic, valida dates i prova restauracions en aïllament. Si l’atacant va accedir al lloc on es guarden còpies xifrades, rota també les claus.
Reconstrueix i redueix el radi futur
Crea arrels netes i independents. Instal·la nucli, plugins i temes des de fonts verificades; importa només uploads, contingut i configuració revisats. Utilitza secrets únics i conserva un manifest per web amb versions, hashes i excepcions justificades.
Sempre que el hosting ho permeti, separa projectes en usuaris o subscripcions diferents. Aplica credencials úniques, MFA, accés de desenvolupament limitat i permisos mínims. Si el pla no pot oferir aïllament real, documenta aquesta limitació i valora migrar els serveis crítics.
Reobre amb comprovacions conjuntes
Verifica a totes les webs fitxers, administradors, cron, cua de correu, DNS, còpies, formularis i checkout. Prova tant la funció pública com les tasques nocturnes. No donis per net el compte perquè la primera web ja funciona.
Monitoritza durant diversos cicles de cron i còpia: creació o canvi de PHP, connexions sortints, accessos al panell, nous usuaris i volum de correu. Mantén les arrels antigues fora del web i un rollback net identificat.
El cas es pot tancar quan cada web té un origen verificat, no hi ha persistència compartida, les claus antigues han quedat invalidades i l’arquitectura ja no permet que una sola infecció escrigui silenciosament a totes les altres.