CiberDatiaProtección para sobrevivir a los ciberataques
Contáctanos
CiberseguridadActualizado 29 de octubre de 20269 min de lectura

Qué hacer si te han hackeado la web con una PHPShell

¿Han instalado una PHPShell en tu web? Te explico por dónde empezar: contener el ataque, avisar al seguro y recuperar la web sin dejar accesos abiertos.

El hosting te avisa de que ha encontrado un archivo malicioso en tu web. O te llama un cliente porque un enlace le ha llevado a una página extraña. Y empiezan las preguntas: ¿cuánto tiempo lleva pasando?, ¿han accedido a los datos?, ¿podemos seguir vendiendo? Es comprensible que quieras arreglarlo cuanto antes.

Si te acaba de pasar, no tienes por qué conocer toda la jerga técnica ni resolverlo tú solo. Si el equipo confirma que hay una PHPShell, mi recomendación es reunir al hosting y a quienes van a responder al incidente. Necesitas saber qué se está haciendo y quién se ocupa de cada paso, incluso cuando todavía falten respuestas.

Si tienes un seguro que pueda cubrirlo, avisa de inmediato a la compañía y a tu corredor, mientras el equipo toma las medidas urgentes. No hace falta llegar a esa llamada con el problema resuelto. Cuenta lo que sabes y deja lo demás como pendiente de investigación.

SI SOLO LEES ESTA PARTE

Puntos principales

  • Una PHPShell puede permitir el acceso remoto al servidor. Su presencia no explica, por sí sola, cómo entraron.
  • Coordina la contención y el aviso al seguro en paralelo. Conserva las pruebas antes de limpiar o restaurar.
  • La recuperación exige cerrar la vía de entrada, retirar otros accesos y comprobar que la copia utilizada es fiable.
  • Si hay datos personales afectados, evalúa las obligaciones de notificación desde el principio. Un escaneo externo no sustituye esa investigación.
01

Qué es una PHPShell y qué puede hacer un atacante

En este contexto, una PHPShell es una web shell escrita en PHP: código instalado sin autorización que permite realizar acciones a distancia en el servidor. Puede estar en un archivo nuevo o mezclado con código legítimo.

Sus capacidades dependen del código y de los permisos disponibles. Puede permitir leer o modificar archivos, extraer información, ejecutar órdenes o dejar otras puertas traseras. El atacante también podría alcanzar servicios conectados si obtiene los accesos necesarios.

La web shell puede haberse instalado tras explotar una vulnerabilidad, aprovechar una subida de archivos insegura o utilizar credenciales robadas. Encontrarla confirma la intrusión; todavía falta averiguar por dónde entraron y hasta dónde llegaron.

Borrar un archivo no cierra el incidente

Entiendo las ganas de borrar el archivo y quitarte el problema de encima. Pero puede haber otras puertas traseras o cuentas comprometidas. Pide que investiguen la vía de entrada: si sigue abierta, el atacante puede volver a instalar el código.

Fuentes: Microsoft Security: Cómo actúan las web shells y por qué persisten

02

Si tienes seguro, comunica el incidente sin esperar a la limpieza

Busca el canal de respuesta a incidentes de tu póliza y explica lo que sabes. Avisa también al corredor para coordinar la gestión. Si te preguntan si se han extraído datos o cuánto durará la parada y aún no lo sabes, dilo así. Es mejor reconocer esa incertidumbre que dar una respuesta que luego tengas que corregir.

Antes de encargar trabajos o asumir gastos extraordinarios, consulta qué profesionales y autorizaciones exige tu contrato. Algunas pólizas cuentan con un panel de especialistas y requieren aprobación para contratar otros. La asistencia, los límites y la cobertura dependen de lo contratado; no cualquier seguro de empresa cubre un ataque a la web.

La Ley de Contrato de Seguro establece un máximo de siete días para comunicar el siniestro desde que se conoce, salvo que la póliza dé más plazo. También exige adoptar medidas para reducir sus consecuencias. En la práctica, avisa inmediatamente: comunicar tarde puede tener consecuencias, aunque no implica perder automáticamente toda cobertura.

  • Prepara el número de póliza, el nombre del asegurado y una persona de contacto.
  • Indica el dominio, el hosting, cuándo detectaste el problema y qué síntomas has observado.
  • Adjunta las alertas disponibles y anota qué medidas se han tomado, a qué hora y por quién.
  • Pide el número de expediente y guarda las comunicaciones y las autorizaciones.

La contención no debe esperar

Mientras comunicas el incidente, coordina con el hosting las medidas urgentes para frenar los accesos indebidos y proteger a los visitantes. Documenta cada actuación.

Fuentes: BOE: Ley de Contrato de Seguro, artículos 16 y 17 · Hiscox España: CyberClear 360, asistencia y panel de expertos (sección 2.1)

Qué revisar en un seguro de ciberriesgos

03

Qué señales justifican revisar una web comprometida

Un aviso de malware, el bloqueo del alojamiento o la aparición de administradores desconocidos merecen una investigación. También las redirecciones, el contenido de spam y las quejas de visitantes. Esas señales no identifican por sí solas una PHPShell concreta.

La portada puede parecer normal aunque haya una intrusión. Pide al equipo que revise los archivos, los accesos y los cambios recientes. Una captura de la página ayuda a documentar un síntoma, pero no permite descartar otros accesos al servidor.

Fuentes: WordPress.org: Qué revisar cuando una web ha sido comprometida

04

Contén el ataque y conserva las pruebas antes de borrar

Con varios proveedores hablando a la vez, puedes acabar recibiendo instrucciones distintas. Yo empezaría por poner al hosting y a los especialistas en la misma conversación y acordar quién dirige la respuesta. Pide que aíslen o restrinjan el servicio afectado según el alcance. Un cartel de mantenimiento dentro del gestor de contenidos puede dejar accesible la dirección de la web shell.

Antes de borrar archivos o restaurar una copia, pide que preserven el estado comprometido y los registros disponibles, siempre que sea viable sin retrasar la contención. Guarda los avisos, la cronología, los archivos sospechosos y las copias de la web y de la base de datos. Registra quién recoge cada evidencia y cuándo.

Esa copia debe quedar identificada y con acceso restringido. Sirve para investigar; no es una versión que puedas volver a publicar. Evita abrir el archivo sospechoso en el navegador para comprobar qué hace: deja el análisis a quienes gestionen el incidente.

Fuentes: CISA: Contención y respuesta a incidentes · Australian Cyber Security Centre: Conservación de evidencias y documentación

05

Investiga cómo entraron y qué más pudieron tocar

El primer paso es entender qué ha pasado. La investigación debe aclarar desde cuándo existe la intrusión, qué cuentas utilizaron y qué información pudieron consultar o modificar. Revisa con el equipo los componentes vulnerables, los usuarios añadidos y las tareas que podrían volver a instalar el código malicioso.

Si varias webs comparten alojamiento o credenciales, inclúyelas en la evaluación. Compara los archivos con versiones oficiales y revisa los hallazgos: una modificación puede ser legítima y un análisis sin alertas puede pasar por alto una puerta trasera.

Fuentes: Microsoft Security: Persistencia de web shells PHP en alojamientos Linux

06

Recupera la web desde una copia verificada o una instalación limpia

Si dependes de la web para recibir pedidos o atender a clientes, cada hora pesa. No puedo decirte cuánto tardará la recuperación sin conocer el alcance. Pide al equipo que te explique qué puede recuperar, qué debe reconstruir y cuándo podrá darte la siguiente actualización.

La recuperación puede partir de una copia comprobada o de una instalación nueva con componentes oficiales y contenido revisado. Si ya no se puede confiar en el servidor, habrá que valorar su reconstrucción.

La copia debe ser anterior a la intrusión, no simplemente anterior al aviso del hosting. La de ayer podría contener un acceso instalado hace semanas. Por eso hacen falta varias versiones históricas y pruebas de restauración.

Antes de reabrir, corrige la vía de entrada y comprueba que se han retirado los accesos persistentes. En una tienda online, contrasta los pedidos y los cambios posteriores a la copia: restaurar sin esa revisión puede perder operaciones o duplicarlas.

Fuentes: NCSC: Recuperación y comprobación de copias limpias

Qué gastos puede dejar un ciberataque en tu empresa

07

Renueva las credenciales y revoca las sesiones comprometidas

La contención incluye revocar los accesos sospechosos. Tras limpiar el entorno, completa la renovación de contraseñas, claves y tokens que hayan podido quedar expuestos, siempre desde un equipo fiable.

Revisa el alojamiento, el gestor de contenidos, la transferencia de archivos, la base de datos y las integraciones afectadas. Invalida las sesiones activas: cambiar solo la contraseña del administrador puede dejar otros accesos abiertos. Si cambiaste credenciales mientras la web seguía comprometida, renuévalas otra vez tras la limpieza.

Activa la autenticación multifactor donde esté disponible y retira las cuentas o los permisos administrativos que ya no hagan falta.

Fuentes: WordPress.org: Cambio de contraseñas y cierre de sesiones tras una intrusión

08

Si hay datos personales, evalúa la notificación desde el principio

A la preocupación por la web puede sumarse otra: qué ha pasado con los datos de tus clientes. Mi consejo es incorporar desde el principio a quien te asesore en protección de datos, para contar con ese apoyo mientras gestionas la recuperación.

Comprueba si el incidente ha afectado a datos de clientes, empleados o personas que enviaron formularios. Una brecha puede implicar acceso no autorizado, pérdida, destrucción o alteración. No hace falta acreditar una descarga de la base de datos para que exista.

El responsable del tratamiento debe documentar la brecha y las decisiones, aunque concluya que no debe notificarla. Debe comunicarla a la autoridad competente salvo que sea improbable que suponga un riesgo para los derechos y libertades de las personas.

Cuando proceda, la notificación se hace sin dilación indebida y, si es posible, dentro de las 72 horas desde que se tiene constancia de la brecha. El cómputo incluye fines de semana y festivos. Si se supera ese plazo, hay que explicar los motivos; no se debe esperar al informe forense definitivo para presentar una notificación inicial y completarla después.

Si existe un alto riesgo, también hay que comunicarlo a las personas afectadas sin dilación indebida, salvo las excepciones legales. Si actúas como encargado del tratamiento, informa al responsable sin dilación indebida. Avisar al seguro no sustituye estas obligaciones.

Fuentes: AEPD: Notificación de brechas de datos personales

09

Comprueba el servicio y los avisos de Google antes de cerrar

Además de la validación técnica, prueba lo que usa tu negocio: formularios, accesos de clientes, pedidos, pagos y correos automáticos. Mantén la vigilancia de archivos y accesos después de reabrir. Si reaparecen cambios sospechosos, revisa la investigación.

Si Google ha marcado la web como peligrosa, consulta «Problemas de seguridad» en Search Console. Corrige todos los problemas indicados y solicita una revisión con las actuaciones realizadas. La retirada del aviso tiene su propio proceso y puede tardar; no desaparece necesariamente al publicar la copia limpia.

Cuando la web vuelve a funcionar, apetece pasar página. Antes de hacerlo, te recomendaría pedir un informe que puedas entender: qué ocurrió, hasta dónde llegó, qué se ha corregido y qué sigue sin saberse. Te servirá para acordar quién se ocupa de las mejoras pendientes y para cuándo.

Fuentes: Google Search Console: Informe Problemas de seguridad y solicitud de revisión

10

Dónde pedir ayuda y qué revisar para reducir el riesgo

Si no tienes seguro, puedes empezar por llamar al hosting y buscar un profesional de respuesta a incidentes. Si no sabes a quién acudir, el 017 de INCIBE puede orientarte. Si hay indicios de delito, conserva las pruebas y presenta una denuncia ante las Fuerzas y Cuerpos de Seguridad. Comunicar un incidente a INCIBE no sustituye la denuncia.

Revisa las actualizaciones, los permisos administrativos y las copias históricas. Si permites subir archivos, comprueba su validación, su ubicación y sus permisos: la extensión del nombre no basta. OWASP recomienda separar el almacenamiento del servidor web o mantenerlo fuera de su directorio público, entre otras medidas, para reducir la posibilidad de ejecutar archivos aportados por usuarios.

Guarda fuera de la propia web los contactos del hosting, del equipo técnico y del seguro. Necesitarás encontrarlos aunque el sitio y el correo no estén disponibles.

Fuentes: INCIBE: Línea de ayuda en ciberseguridad 017 · INCIBE: Ciberamenazas contra entornos empresariales · OWASP: Controles para la subida de archivos

11

Revisa la exposición visible de tu dominio

Cuando el incidente esté controlado, puedes usar nuestro diagnóstico para revisar qué sigue siendo visible desde fuera. En CiberDatia comprobamos señales públicas de la web y su infraestructura, la configuración del correo y filtraciones conocidas. Selecciona «Web e infraestructura visible» para incluir esa parte y analiza únicamente un dominio para el que tengas autorización.

Verificarás tu correo con un código. La revisión web puede tardar y continuar en segundo plano; recibirás el enlace al informe por correo.

Este diagnóstico externo no accede a los archivos internos del servidor ni certifica la ausencia de una PHPShell. Si ya hay indicios de intrusión, prioriza la contención y la investigación con el equipo responsable. Utiliza la herramienta como apoyo para revisar la exposición visible, también después de recuperar la web.

Ir al diagnóstico de vulnerabilidades y exposición del dominio

Hasta dónde llega esta guía

Este contenido ofrece orientación general y no sustituye un análisis jurídico, técnico o sectorial del caso concreto. Las obligaciones y controles deben ajustarse al sistema, al uso, a los datos y a las personas afectadas.

FUENTES PRIMARIAS Y TÉCNICAS

Comprueba la fuente, no nuestra palabra

Diagnóstico de vulnerabilidades y exposición

Comprueba qué señales deja tu dominio a la vista

Revisa la web, el correo y filtraciones conocidas. El diagnóstico no sustituye la investigación de un incidente ni acredita que el servidor esté limpio.

Hacer el diagnóstico gratuito Cuéntame qué ha pasado

Siguiente duda