Esborres un PHP desconegut d’una carpeta mensual d’uploads i torna hores després. La reaparició demostra que un altre procés, compte o petició encara el pot escriure. Esborrar-lo repetidament elimina el símptoma i deixa activa la persistència.
Impedeix-ne l’execució, conserva una mostra segura i identifica l’escriptor abans d’obrir la web.
Conserva una aparició
Registra ruta completa, propietari i grup, permisos, mida i hora. Calcula un hash sense executar:
sha256sum /quarantine/suspicious-file.php
Treballa sobre una còpia en quarantena fora de l’arrel. No obris la URL, l’incloguis des de PHP ni la pugis a un escàner públic no autoritzat.
Conserva registres web, PHP, SFTP i panell pròxims a la data de modificació.
Confirma si PHP s’executa als uploads
Uploads hauria de desar mitjans, no aplicacions PHP públiques. Comprova la configuració mitjançant documentació i fitxers segurs, mai executant la mostra.
Aplica una regla compatible per impedir PHP als uploads. Apache, Nginx i diferents handlers requereixen configuracions diferents; un .htaccess copiat pot no funcionar.
Això només conté. L’escriptor encara podria col·locar scripts en una altra ruta.
Relaciona l’hora amb peticions i tasques
Compara el timestamp amb registres, cron de WordPress, Action Scheduler, cron del hosting, còpies i anàlisis. Considera zones horàries i dates alterades per còpies o restauracions.
Cerca endpoints de càrrega, accions AJAX o POST estranys just abans. Conserva metadades sense emmagatzemar contrasenyes, galetes o fitxers de clients innecessaris.
Si no coincideix amb trànsit web, investiga SFTP, panell, cron o una altra web compromesa.
Compara també propietari i identificador del procés quan el hosting els faciliti. Una escriptura feta per l’usuari de PHP no demostra quin connector la va originar, però descarta algunes rutes externes. Una escriptura amb un altre usuari orienta cap a tasques del sistema, desplegaments o accés al panell.
Troba el procés o codi pare
Cerca en una còpia el nom exacte, cadena distintiva o codi que escrigui als uploads. Revisa connectors desconeguts, mu-plugins, tema i wp-config.php.
Inspecciona opcions i callbacks programats que continguin codi. No descodifiquis ni executis payloads a producció.
Si hi ha auditoria de fitxers, configura-la de manera estreta i temporal. La vigilància recursiva àmplia pot carregar el servidor i registrar dades sensibles.
Registra només creació, ruta, usuari, procés i hora. No copiïs el contingut de tots els uploads al registre. Atura l’auditoria després de capturar l’esdeveniment i conserva’n la configuració perquè el proveïdor pugui interpretar correctament el resultat.
Revisa vulnerabilitats de càrrega
Identifica connectors i formularis que accepten fitxers. Confirma extensió, MIME, permisos i manteniment de cada component.
No confiïs en restriccions del navegador. Les funcions personalitzades necessiten validació de servidor i emmagatzematge no executable.
Apedaça o desactiva el component després de conservar versió i registres. Elimina formularis abandonats, no els amaguis.
Comprova els accessos de tot el compte
Revisa administradors, contrasenyes d’aplicació, FTP, SFTP, sessions del hosting i cron. Rota credencials després d’assegurar dispositius i desplegaments.
Inspecciona totes les webs del compte. Una instal·lació veïna compromesa pot escriure en una altra arrel si els permisos ho permeten.
Corregeix propietari i aïllament, no concedeixis permisos mundials perquè funcionin actualitzacions.
Neteja i demostra que no reapareix
Elimina fitxers confirmats, substitueix paquets fiables, neteja persistència a la base i tanca la vulnerabilitat o accés robat.
Monitoritza el directori durant l’interval en què solia tornar. Prova la càrrega amb un fitxer permès i innocu i confirma que PHP no s’executa.
Un escàner verd durant un minut no és suficient; observa cicles programats i el període històric de recurrència.
Mantén una alerta sobre extensions executables i canvis de regles dins dels uploads. L’absència de la mateixa mostra no és suficient si l’escriptor comença a utilitzar noms aleatoris o extensions dobles.
Quan demanar neteja especialitzada
Demana ajuda urgent si els fitxers tornen, hi ha diverses webs compartides o els registres mostren POST o SFTP desconeguts. Envia rutes i hores amb usuaris censurats, no la mostra ni credencials.
La reparació ha d’explicar qui o què va escriure el fitxer i demostrar que s’han tancat l’execució i la reinfecció.