# Cómo limpiar un WordPress hackeado paso a paso

**Categoría:** Desarrollo web · **Nivel:** Avanzado · **Lectura:** 18 min
**Publicada:** 2026-07-28 · **Actualizada:** 2026-07-28 · **Autoría:** Underc0de
**Versión HTML (canónica):** https://underc0de.org/guias/desarrollo-web/como-limpiar-un-wordpress-hackeado/

## Respuesta rápida

Si tu WordPress fue **hackeado** —redirecciones extrañas, avisos del navegador o de Google, spam que no publicaste, archivos raros, picos de tráfico inexplicables—, la limpieza tiene un **método ordenado** que conviene seguir para no empeorarlo. Los pasos, en orden: **(1) Aislar** el sitio (ponerlo en mantenimiento o restringir el acceso) para frenar el daño y no propagarlo a los visitantes. **(2) Hacer una copia del estado comprometido** antes de tocar nada —una «foto forense»— por si necesitás analizar cómo entraron. **(3) Encontrar y quitar el malware**: comparar los archivos del núcleo, los temas y los plugins con versiones oficiales limpias para detectar lo modificado o inyectado, buscar archivos y código sospechosos, y revisar la base de datos en busca de contenido inyectado. Reinstalar el núcleo y los plugins desde cero desde fuentes oficiales es lo más seguro. **(4) Cambiar TODAS las credenciales**: contraseñas de administradores, del hosting, de la base de datos, claves de la API, y revisar que no haya usuarios administradores fantasma. **(5) Cerrar la puerta de entrada**: encontrar *cómo* entraron (casi siempre un plugin o tema desactualizado y vulnerable, o una contraseña débil) y taparlo, porque si no, volverán. La mejor herramienta en todo esto es un [backup limpio y reciente](../como-realizar-y-restaurar-backups-de-wordpress/index.md): si tenés una copia anterior al compromiso, restaurarla y luego actualizar y endurecer suele ser más rápido y fiable que limpiar a mano. Dos advertencias: **este proceso es solo para sitios propios o bajo tu responsabilidad**, y si el sitio es crítico o el compromiso es grave, considerá un servicio profesional de limpieza.

## Detectar el hackeo

Un WordPress comprometido casi siempre **da señales**. Reconocerlas a tiempo limita el daño:

| Señal | Qué suele indicar |
|---|---|
| Redirecciones a sitios extraños | Código malicioso inyectado que desvía a los visitantes |
| Aviso del navegador o de Google | El sitio fue marcado como peligroso o distribuyendo malware |
| Spam o contenido que no publicaste | Entradas, enlaces o páginas inyectadas para SEO de terceros |
| Usuarios administradores desconocidos | Cuentas creadas por el atacante para mantener el acceso |
| Archivos raros o modificados | Malware o puertas traseras subidas al servidor |
| Picos de tráfico o de recursos | El sitio usado para enviar spam o alojar contenido ajeno |

> **Atención**
>
> Todo lo que sigue está pensado para **recuperar un sitio propio o del que sos responsable**: es una tarea **defensiva**, de limpieza y recuperación tras un incidente. No es una guía para acceder a sitios ajenos ni para nada parecido. Si administrás el WordPress de un cliente, hacelo con su conocimiento y autorización. Y una recomendación honesta: si el sitio es **crítico para un negocio**, si el compromiso es **grave o persistente**, o si no tenés experiencia técnica suficiente, lo más sensato es recurrir a un **servicio profesional** de limpieza de WordPress o a tu proveedor de hosting, que muchas veces ofrece este servicio. Limpiar mal deja puertas abiertas.

## El proceso de limpieza

El método ordenado, paso a paso:

- **1. Aislar.** Poné el sitio en mantenimiento o restringí el acceso para frenar el daño, proteger a los visitantes y evitar que Google lo penalice más. Avisá a tu hosting: el compromiso puede afectar a otros sitios del mismo servidor.
- **2. Copia forense.** Antes de borrar nada, guardá una copia completa (archivos y base de datos) del estado *comprometido*. Servirá para analizar cómo entraron y qué tocaron, y como red de seguridad si algo sale mal en la limpieza.
- **3. Encontrar y quitar el malware.** Comparar los archivos del núcleo, temas y plugins con las versiones **oficiales limpias** revela lo modificado o inyectado. Reinstalar el núcleo de WordPress y los plugins **desde cero desde fuentes oficiales** es más seguro que intentar «desinfectar» archivo por archivo. Revisar la base de datos por contenido y usuarios inyectados. Un plugin de seguridad reputado ayuda a escanear.
- **4. Cambiar TODAS las credenciales.** Contraseñas de todos los administradores, del panel del hosting, del FTP/SFTP, de la base de datos, y las *claves secretas* de WordPress (las *salts* de `wp-config.php`). Eliminar usuarios administradores que no reconozcas.
- **5. Cerrar la puerta.** Averiguar **cómo entraron** —revisar los registros del servidor, la copia forense— y taparlo: actualizar o quitar el plugin/tema vulnerable, corregir la contraseña débil, endurecer permisos.

> **Atención**
>
> Si tenés un [backup](../como-realizar-y-restaurar-backups-de-wordpress/index.md) **anterior al compromiso** y sabés que estaba limpio, restaurarlo suele ser **más rápido y fiable** que limpiar a mano: volvés a un estado sano de un golpe. Pero cuidado con dos cosas. Primera: hay que **saber cuándo entraron**, porque si restaurás una copia que ya estaba comprometida, no arreglás nada. Segunda: restaurar **no cierra la puerta**: si el agujero era un plugin vulnerable, tras restaurar hay que **actualizar y endurecer** igual, o te vuelven a entrar por el mismo sitio. Por eso la estrategia de copias importa tanto: tener varias versiones en el tiempo, como propone la [regla 3-2-1](../../seguridad-informatica/regla-de-backup-3-2-1-para-proteger-informacion/index.md), te da margen para elegir una copia realmente limpia.

## Que no vuelva a pasar

Limpiar sin prevenir es tapar el sol con un dedo: si dejás el agujero abierto, el sitio se vuelve a comprometer en días. Las medidas de fondo:

- **Actualizar todo, siempre.** Núcleo, temas y plugins al día; los plugins desactualizados son la vía de entrada número uno.
- **Quitar lo que no usás.** Cada plugin o tema instalado es superficie de ataque; desinstalar (no solo desactivar) lo que no se usa.
- **Contraseñas fuertes y únicas, con 2FA.** Sobre todo en las cuentas de administrador y del hosting.
- **Plugin de seguridad y firewall.** Un cortafuegos de aplicación web bloquea muchos ataques automatizados.
- **Backups periódicos y probados.** Para poder volver a un estado limpio la próxima vez.
- **Permisos y accesos mínimos.** Cada usuario con el rol justo; nada de administradores de más.

> **Atención**
>
> Si Google o el navegador marcaron tu sitio como peligroso, limpiarlo no basta para quitar el aviso: hay que **solicitar una revisión** desde las herramientas para webmasters una vez que el sitio esté limpio y seguro, para que retiren la advertencia. Del mismo modo, conviene **vigilar el sitio** las semanas siguientes —revisar que no reaparezcan archivos raros, usuarios extraños o redirecciones—, porque los atacantes a veces dejan varias puertas traseras y una limpieza incompleta permite que vuelvan. Endurecer la seguridad de forma general, como se ve al [proteger una red](../../hacking/como-proteger-una-red-wifi-domestica-o-empresarial/index.md) y aplicar buenas prácticas, reduce la probabilidad de un segundo incidente.

## Errores frecuentes

- **Borrar todo a lo loco sin copia previa.** Destruye las pruebas de cómo entraron y puede dejar el sitio irrecuperable.
- **Limpiar sin cerrar la puerta de entrada.** Si el agujero sigue abierto, el sitio se vuelve a comprometer en días.
- **Restaurar un backup que ya estaba comprometido.** Hay que saber cuándo entraron para elegir una copia realmente limpia.
- **No cambiar todas las credenciales.** Una contraseña o clave sin rotar deja al atacante dentro.
- **Olvidar los usuarios administradores fantasma.** El atacante suele crear cuentas para volver; hay que eliminarlas.
- **Desinfectar archivo por archivo en vez de reinstalar.** Es fácil dejar una puerta trasera; reinstalar desde fuentes oficiales es más seguro.
- **No avisar al hosting.** El compromiso puede afectar a otros sitios y el proveedor puede ayudar.

## Preguntas frecuentes

**¿Cómo sé si mi WordPress fue hackeado?**
Un WordPress comprometido casi siempre da señales reconocibles que permiten detectar el problema, y aprender a identificarlas a tiempo es fundamental para limitar el daño y actuar con rapidez. Entre las señales más habituales de que un sitio de WordPress ha sido hackeado se encuentran las siguientes. Las redirecciones a sitios extraños, en las que los visitantes que llegan al sitio son enviados automáticamente a otras páginas, normalmente de contenido dudoso o malicioso, lo que suele indicar que se ha inyectado código malicioso que desvía el tráfico. Los avisos del navegador o de Google, que marcan el sitio como peligroso o como distribuidor de malware, alertando a los usuarios antes de dejarles entrar, lo que es una señal clara de que el sitio ha sido detectado como comprometido. La aparición de spam o de contenido que no se ha publicado, como entradas, enlaces o páginas que uno no creó, a menudo con fines de posicionamiento de terceros o de estafa. La existencia de usuarios administradores desconocidos, es decir, cuentas con permisos de administración que uno no creó y que el atacante suele añadir para mantener el acceso al sitio. La presencia de archivos raros o modificados en el servidor, que pueden ser malware o puertas traseras subidas por el atacante. Y los picos inexplicables de tráfico o de consumo de recursos, que pueden deberse a que el sitio está siendo utilizado para enviar spam, alojar contenido ajeno o participar en ataques. Además de estas señales visibles, existen otros indicios como cambios en archivos clave, la aparición de código sospechoso en las páginas, la pérdida de acceso al panel de administración o notificaciones del proveedor de hosting sobre actividad anómala. Ante cualquiera de estas señales, conviene actuar con método y sin precipitarse, ya que el instinto de borrar todo apresuradamente suele empeorar la situación y destruir las pruebas necesarias para entender cómo se produjo el compromiso. Es importante recordar que todo el proceso de detección y limpieza está pensado para sitios propios o de los que se es responsable, como una tarea defensiva de recuperación tras un incidente.

**¿Cuál es el primer paso al descubrir que el sitio está comprometido?**
El primer paso al descubrir que un sitio de WordPress está comprometido es aislarlo, es decir, ponerlo en modo mantenimiento o restringir el acceso a él, con el objetivo de frenar el daño, proteger a los visitantes y evitar que la situación empeore, y es importante resistir el instinto de empezar a borrar cosas apresuradamente, ya que eso suele complicar la recuperación. Aislar el sitio cumple varias funciones importantes. En primer lugar, protege a los visitantes, ya que un sitio comprometido puede estar redirigiéndolos a páginas maliciosas, intentando infectar sus dispositivos o robando sus datos, de modo que impedir el acceso mientras se limpia evita seguir causando perjuicios a quienes lo visitan. En segundo lugar, frena la propagación del daño, tanto dentro del propio sitio como potencialmente hacia otros sitios alojados en el mismo servidor, ya que algunos compromisos pueden extenderse. En tercer lugar, ayuda a limitar las penalizaciones de los buscadores, ya que si Google detecta que el sitio distribuye malware puede marcarlo como peligroso, y reducir el tiempo durante el cual sirve contenido malicioso ayuda en la posterior recuperación de la reputación. Junto con el aislamiento, es muy recomendable avisar cuanto antes al proveedor de hosting, por dos motivos: porque el compromiso podría estar afectando a otros sitios del mismo servidor y el proveedor necesita saberlo, y porque muchos proveedores ofrecen ayuda o incluso servicios de limpieza ante estas situaciones. Un aspecto crucial que debe acompañar a este primer paso, antes de comenzar a modificar o borrar nada, es hacer una copia completa del estado comprometido del sitio, tanto de los archivos como de la base de datos, una especie de foto forense que servirá para analizar más tarde cómo se produjo la intrusión y qué elementos se vieron afectados, y que actúa además como red de seguridad por si algo sale mal durante la limpieza. Solo después de haber aislado el sitio, avisado al hosting y guardado esa copia del estado comprometido conviene pasar a las siguientes fases de la limpieza, que consisten en encontrar y eliminar el malware, cambiar todas las credenciales y cerrar la puerta de entrada por la que se produjo el ataque.

**¿Cómo encuentro y elimino el malware?**
Encontrar y eliminar el malware de un WordPress comprometido es la fase central de la limpieza, y se aborda mediante una combinación de técnicas orientadas a detectar todo lo que el atacante haya modificado, inyectado o subido, teniendo en cuenta que la forma más segura de eliminar el malware suele ser reinstalar los componentes limpios desde fuentes oficiales en lugar de intentar desinfectarlos uno a uno. El primer enfoque consiste en comparar los archivos del sitio con las versiones oficiales y limpias correspondientes. Los archivos del núcleo de WordPress, de los temas y de los plugins tienen versiones oficiales conocidas, de manera que comparando los archivos del sitio con esas versiones originales se puede detectar qué archivos han sido modificados o cuáles son archivos extraños que no deberían estar ahí, lo que revela las inyecciones de código malicioso y los archivos añadidos por el atacante. El segundo enfoque, y el más seguro para eliminar el malware de los componentes, es reinstalar desde cero desde fuentes oficiales: reinstalar el núcleo de WordPress descargándolo del sitio oficial, y reinstalar los temas y plugins legítimos desde sus fuentes oficiales, lo que garantiza que esos componentes queden limpios, en lugar de intentar limpiar archivo por archivo, tarea en la que es fácil pasar por alto una puerta trasera oculta. El tercer enfoque es revisar la base de datos, ya que el malware y el contenido inyectado no siempre están en los archivos, sino que a veces se encuentran en la base de datos, por ejemplo en forma de entradas de spam, enlaces inyectados, scripts maliciosos insertados en el contenido o usuarios administradores fraudulentos, por lo que hay que examinarla y limpiar lo que no corresponda. Como apoyo a todo este proceso, resulta muy útil emplear un plugin de seguridad reputado que escanee el sitio en busca de malware conocido, archivos sospechosos y modificaciones, ya que automatiza buena parte de la detección. Es importante ser exhaustivo, porque los atacantes suelen dejar varias puertas traseras para poder volver, de modo que una limpieza incompleta que deje aunque sea una sola de ellas permitirá que el sitio se vuelva a comprometer. Por ello, muchos profesionales prefieren, cuando es viable, reconstruir el sitio desde una instalación limpia y una copia de seguridad anterior al compromiso, reincorporando el contenido legítimo, antes que intentar desinfectar una instalación muy dañada.

**¿Por qué hay que cambiar todas las contraseñas y claves?**
Hay que cambiar todas las contraseñas y claves tras un compromiso de WordPress porque, una vez que un atacante ha entrado en el sitio, es muy probable que haya obtenido o tenga acceso a diversas credenciales, y si no se cambian todas, el atacante puede seguir teniendo acceso al sitio aunque se haya eliminado el malware, lo que haría inútil el resto de la limpieza. Cuando se produce una intrusión, el atacante puede haber capturado las contraseñas almacenadas, haber creado sus propias vías de acceso o haber accedido a información sensible que le permita volver a entrar, por lo que la rotación completa de credenciales es imprescindible para cortar todos esos accesos. Las credenciales que hay que cambiar son varias y conviene no olvidar ninguna. En primer lugar, las contraseñas de todos los usuarios administradores del sitio, ya que son las que dan control total sobre WordPress. En segundo lugar, la contraseña del panel de control del hosting, que da acceso a la gestión completa del alojamiento. En tercer lugar, las credenciales de acceso por FTP o SFTP, que permiten subir y modificar archivos directamente en el servidor. En cuarto lugar, la contraseña de la base de datos, que almacena todo el contenido del sitio. En quinto lugar, las claves secretas de WordPress, conocidas como salts, que se encuentran en el archivo de configuración principal y que se utilizan para cifrar la información de las sesiones; cambiarlas tiene el efecto de invalidar todas las sesiones activas, lo que expulsa a cualquier atacante que tuviera una sesión iniciada. Y en sexto lugar, cualquier clave de interfaces de programación o servicios externos que el sitio utilice, por si hubieran quedado expuestas. Además de cambiar todas estas credenciales, es imprescindible revisar la lista de usuarios del sitio y eliminar cualquier cuenta de administrador desconocida o sospechosa, ya que los atacantes suelen crear usuarios administradores fraudulentos precisamente para mantener el acceso incluso después de que se cambien las contraseñas de las cuentas legítimas. Solo cambiando todas las credenciales y eliminando los usuarios fraudulentos se puede tener la seguridad de haber cerrado todas las vías de acceso que el atacante pudiera estar utilizando, lo que es un requisito indispensable para que la limpieza sea efectiva.

**¿Sirve restaurar una copia de seguridad para arreglarlo?**
Restaurar una copia de seguridad puede ser una forma muy eficaz y rápida de recuperar un WordPress comprometido, y a menudo es más fiable que intentar limpiar el sitio a mano, pero para que funcione correctamente hay que tener en cuenta dos condiciones importantes que, si se ignoran, harían que la restauración no resolviera el problema. La primera ventaja de restaurar una copia de seguridad es que permite volver de golpe a un estado sano del sitio, anterior al compromiso, sin necesidad de ir buscando y eliminando cada archivo malicioso y cada inyección uno por uno, lo que ahorra tiempo y reduce el riesgo de dejar alguna puerta trasera oculta. Sin embargo, la primera condición que hay que cumplir es saber cuándo se produjo el compromiso, porque si se restaura una copia de seguridad que ya estaba comprometida, es decir, tomada después de que el atacante entrara, no se soluciona nada, ya que se estaría restaurando el sitio con el malware incluido. Por eso es fundamental identificar la fecha aproximada de la intrusión y elegir una copia anterior a ella que se sepa que estaba limpia, lo que resalta la importancia de tener varias copias de seguridad de distintos momentos en el tiempo, y no solo la más reciente. La segunda condición es que restaurar una copia de seguridad no cierra por sí misma la puerta de entrada por la que se produjo el ataque. Si el compromiso se produjo, por ejemplo, a través de un plugin desactualizado y vulnerable, al restaurar una copia anterior se recupera un sitio limpio, pero ese plugin vulnerable seguirá estando presente, de modo que el atacante podría volver a entrar por la misma vía en poco tiempo. Por ello, después de restaurar una copia limpia es imprescindible actualizar de inmediato el núcleo, los temas y los plugins, cambiar todas las credenciales y aplicar las medidas de endurecimiento de la seguridad, para cerrar el agujero que permitió la intrusión. En resumen, restaurar una copia de seguridad es una herramienta excelente para recuperar un sitio comprometido siempre que se elija una copia realmente limpia y anterior al compromiso, y siempre que se complemente con la actualización, el cambio de credenciales y el endurecimiento posteriores, sin los cuales el sitio quedaría de nuevo expuesto. Esto explica por qué disponer de una buena estrategia de copias de seguridad, con varias versiones en el tiempo, es una de las mejores defensas frente a este tipo de incidentes.

**¿Cómo evito que mi WordPress vuelva a ser hackeado?**
Para evitar que un WordPress vuelva a ser hackeado es imprescindible, además de limpiar el sitio, cerrar la puerta de entrada por la que se produjo el ataque y aplicar una serie de medidas de seguridad de fondo, ya que limpiar sin prevenir deja el sitio expuesto a un nuevo compromiso, que a menudo se produce en cuestión de días si el agujero sigue abierto. La medida más importante es mantener todo actualizado en todo momento, es decir, el núcleo de WordPress, los temas y los plugins, ya que los componentes desactualizados con vulnerabilidades conocidas son la vía de entrada más frecuente de los ataques; las actualizaciones corrigen esos fallos de seguridad, por lo que aplicarlas con prontitud cierra muchas de las puertas que aprovechan los atacantes. Otra medida clave es eliminar todo lo que no se utiliza, desinstalando por completo, y no solo desactivando, los plugins y temas que no se necesiten, ya que cada componente instalado representa una superficie de ataque adicional que hay que mantener y que puede tener vulnerabilidades. También es fundamental utilizar contraseñas fuertes y únicas en todas las cuentas, especialmente en las de administrador y en la del hosting, y activar la autenticación de dos factores, que añade una segunda barrera que impide el acceso incluso si una contraseña se ve comprometida. Conviene asimismo instalar un plugin de seguridad reputado y, si es posible, un cortafuegos de aplicación web, que bloquea muchos de los ataques automatizados antes de que lleguen a explotar una vulnerabilidad. Es esencial mantener copias de seguridad periódicas y comprobadas, guardadas de forma segura, para poder recuperar el sitio limpio en caso de un futuro incidente. Además, se recomienda aplicar el principio de privilegios mínimos, otorgando a cada usuario únicamente el rol y los permisos que necesita y evitando tener cuentas de administrador de más. Por último, tras limpiar un sitio que hubiera sido marcado como peligroso por Google o por los navegadores, hay que solicitar la revisión correspondiente desde las herramientas para webmasters una vez que el sitio esté limpio y seguro, para que se retire la advertencia, y conviene vigilar el sitio durante las semanas siguientes para detectar cualquier reaparición de archivos sospechosos, usuarios extraños o redirecciones, ya que los atacantes a veces dejan varias puertas traseras y una limpieza incompleta permite que vuelvan. Con la combinación de todas estas medidas se reduce enormemente la probabilidad de sufrir un nuevo compromiso.

## Fuentes

Documentación oficial y material de la comunidad consultados para esta guía. Fecha de consulta: 28 de julio de 2026.

### Aportes de la comunidad Underc0de

1. **Underc0de, foro.** [Diseño y programación web](https://underc0de.org/foro/diseno-y-programacion-web/). Seguridad de WordPress.
2. **Underc0de, foro.** [Sección Hacking](https://underc0de.org/foro/hacking/). Análisis de sitios comprometidos.

### Documentación oficial

1. **WordPress.org.** [FAQ: My site was hacked](https://wordpress.org/documentation/article/faq-my-site-was-hacked/). Guía oficial de recuperación.
2. **WordPress.org.** [Hardening WordPress](https://wordpress.org/documentation/article/hardening-wordpress/). Endurecer la seguridad.
3. **OWASP.** [OWASP Top 10](https://owasp.org/www-project-top-ten/). Riesgos de seguridad web.
4. **Google Search Central.** [Hacked site recovery](https://developers.google.com/search/docs/monitor-debug/security/hacked-site-recovery). Recuperación tras un compromiso.

## Guías relacionadas

- [Backups de WordPress](../como-realizar-y-restaurar-backups-de-wordpress/index.md)
- [Regla de backup 3-2-1](../../seguridad-informatica/regla-de-backup-3-2-1-para-proteger-informacion/index.md)
- [Endurecer la seguridad](../../hacking/como-proteger-una-red-wifi-domestica-o-empresarial/index.md)
- [SSL/TLS y HTTPS](../ssl-tls-certificados-y-https/index.md)
- [Índice de Desarrollo web](../index.md)
