La desinfección de un WordPress comprometido conlleva un proceso: localizar el malware, reemplazar todos los archivos genéricos de WordPress, plugins y tema, reforzar la seguridad y volver a realizar el análisis. Señales como redirecciones, lentitud, contenido modificado o penalizaciones SEO evidencian la infección. El resultado depende de llevar a cabo cada paso de forma adecuada y de pedir después la revisión a Google.
Las infecciones y virus informáticos afectan a cualquier tipo de dispositivo, software y página web, por lo que hoy en día, en un mundo digital en continua transformación, preservar la seguridad de tu sitio web resulta más esencial que nunca.
En el caso de WordPress, conviene considerar que es el sistema de gestión de contenido (CMS) más extendido del mercado, de modo que constituye un objetivo habitual de ciberataques y malware.
En MidasTheme, estamos especializados en WordPress, y contamos con un procedimiento de desinfección que asegura la limpieza completa del virus o malware en tu sitio web, siempre que se lleve a cabo de manera correcta.
Por eso, en esta entrada te explicaremos cómo puedes limpiar virus en WordPress, además de mostrarte algunas herramientas adicionales para prevenir, detectar y analizar malware en este CMS.

Causas más comunes de infección
Hay una gran cantidad de motivos y maneras por las que tu sitio web en WordPress puede infectarse, y en determinadas ocasiones puntuales, no es realmente posible identificar qué la ha provocado exactamente; sin embargo, si tuviéramos que señalar las causas más habituales, podrían ser las que siguen:
- Elementos desactualizados: hay que considerar que uno de los motivos por los que los distintos elementos (plugins y temas) y el propio núcleo de WordPress publican actualizaciones de forma periódica es para intentar corregir ciertas vulnerabilidades de versiones anteriores, por lo que resulta sumamente importante mantener la aplicación lo más actualizada posible para evitar que los atacantes puedan introducir virus o malware en tu sitio web.
- Contraseñas inseguras: es muy recomendable emplear contraseñas seguras (con caracteres especiales, números, mayúsculas, minúsculas, etc.) en todos los accesos que gestiones (panel de control, usuario de WordPress, emails, etc.), ya que es una de las causas principales de infección y una de las más peligrosas; ten en cuenta que si consiguen tu contraseña, el atacante tendrá acceso a prácticamente todo el contenido de tu web o panel de control, y podría incluso llegar a eliminarla por completo o cambiar la contraseña en su propio beneficio.
Principales síntomas y consecuencias de un WordPress infectado
En la mayoría de los casos, la infección puede percibirse de manera clara, ya que suele ocasionar comportamientos anómalos y alterar ciertas funciones del sitio web; no obstante, sí puede haber casos en los que, por ejemplo, se produzca una redirección con alguna acción concreta, o al acceder a la web con un user-agent específico, y estos serían más difíciles de detectar.
Aun así, te indicaremos a continuación los principales síntomas que indican que un sitio web está infectado, y alguna de las consecuencias que esto puede ocasionar:
- Redirección de tráfico web: muchas de las infecciones que existen actualmente redirigen todo el tráfico de tu web a páginas maliciosas externas, por lo que no solo perjudica a la propia reputación del sitio, sino que podría dar como resultado sanciones por parte del propio Google u otros motores de búsqueda.
- Rendimiento reducido del servidor y de la web: las infecciones suelen provocar lentitud en la página y en el propio servidor, ya que es posible que se estén cargando scripts adicionales en la misma o alguna consulta no autorizada en la base de datos.
- Daño a la reputación de tu sitio web: se pueden mostrar mensajes al acceder a la misma que provoque que los usuarios no confíen en él.

- Robo de datos: algunas infecciones se realizan con el objetivo de robar información delicada, ya sea del propio administrador de la web o de los clientes de este (tarjetas de crédito, contraseñas, etc.).
- Alteración de contenido: el atacante puede llegar a modificar ciertas páginas de la web con contenidos, redirecciones o publicidad no deseada.
- Penalización en el SEO, ya que los motores de búsqueda como Google suelen penalizar este tipo de comportamientos si detectan algún tipo de virus o malware en la instalación.
- Resultados alterados en los motores de búsqueda: en ciertas ocasiones, nos pueden aparecer indexados resultados como este:

- Error en el sitio web: las infecciones suelen alterar los archivos de la instalación, lo que puede provocar todo tipo de errores en la misma (también existe la posibilidad de que la herramienta antimalware del servidor detecte esos archivos y los ponga en cuarentena o los elimine, lo que implica que no puedan cargarse correctamente y se genere un error en la web).
- Coste de reparación: no todo el mundo sabe cómo actuar en este tipo de situaciones (por ello realizamos esta guía) o tiene tiempo para hacerlo, por lo que puede ser necesario contratar algún servicio de desinfección.
- Pérdida de datos: en el peor de los casos, existen infecciones que pueden llegar a eliminar todos los contenidos de la web, y en ciertas ocasiones, si no tienes una copia de seguridad, podrías perderlo todo de forma permanente.
¿Cómo detectar malware en WordPress?
Dando por hecho que ya sabemos que nuestro WordPress se encuentra infectado, es recomendable analizar el tipo de virus que está afectando a tu instalación.
Para ello, existen multitud de herramientas que te van a permitir analizar tu sitio web y facilitarte algo de información adicional para descubrir el alcance del problema.
Es importante tener en cuenta que ninguna herramienta de análisis o antimalware es perfecta, por lo que es posible que no se detecte nada en el proceso, no obstante, esto no quiere decir que la instalación esté limpia (nuestra recomendación es utilizar este tipo de herramientas como apoyo, para tener a nuestra disposición la máxima información posible del tipo del virus que está afectando a la web).
Análisis con Sucuri SiteCheck
Sucuri es una de las empresas más conocidas de seguridad y de limpieza de malware, y desde su página web, ponen a tu disposición una herramienta de análisis gratuita que suele detectar de una forma bastante eficiente los archivos o scripts infectados en tu sitio web.
A continuación, puedes ver un ejemplo de un sitio web analizado con esta herramienta, en donde se pueden apreciar los ficheros afectados por el virus y el tipo de malware concreto:

La URL desde la que puedes efectuar el análisis sería esta: https://sitecheck.sucuri.net/
Aparte de esta herramienta, Sucuri también ofrece servicios adicionales de securización y de limpieza de malware, por lo que, si quisieras conocer más el respecto, puedes visitar su página web: https://sucuri.net/
Hay otras páginas web que también te posibilitan hacer análisis en línea de tu sitio web, como por ejemplo “Quttera” o “Virus Total”, que te deja examinar archivos de manera directa; sin embargo, según los últimos análisis que hemos llevado a cabo, la que mejores resultados nos está proporcionando es Sucuri.
Análisis con Imunify360
Imunify360 es el software de seguridad que está instalado en todos nuestros planes de hosting con cPanel, incluidos los hosting reseller y los hosting elásticos.
Imunify360 es bastante más que una herramienta antimalware (puede actuar como WAF o incluso filtrar el correo electrónico mediante SMTP), si bien en este post solo haremos referencia a su funcionalidad de análisis. Si te interesa saber todo lo que brinda esta herramienta, contamos con este post en el que la tratamos con amplitud y detalle.
Esta herramienta te posibilita efectuar análisis a demanda o de manera programada (el nivel de detección y la periodicidad de los análisis dependerán de la configuración que aplique cada proveedor), además cuenta con un apartado de “Historial” en el que puedes comprobar si en algún momento se detectó malware en el pasado y qué medidas se adoptaron con él (si se envió a cuarentena, si se borraron los archivos infectados, etc.).
Para realizar un análisis con esta herramienta, entraremos en nuestro cPanel y nos iremos al apartado «Seguridad >> Imunify360», desde el cual podremos lanzar un nuevo análisis cuando queramos.

Análisis con Wordfence
Hay numerosos plugins en WordPress que posibilitan analizar la instalación en busca de virus, sin embargo, en nuestro caso, solemos recurrir siempre a Wordfence, puesto que cuenta con una base de datos de detección bastante amplia, y es la que mejores resultados nos ha dado últimamente.
En este post, solo te hablaremos de su función de análisis, igual que hicimos en el apartado previo con Imunify360; no obstante, si deseas conocer con más profundidad todas las opciones de este plugin, disponemos de esta guía de Wordfence que lo trata en detalle y te aconsejamos que le eches un vistazo.
Una vez instalado el plugin (podemos bajarlo gratis desde el propio repositorio de WordPress), nos dirigiremos en primer lugar a la configuración para activar todas las opciones disponibles para la exploración/análisis del mismo, esto lo podemos hacer desde «Wordfence >> Todas las opciones >> Opciones de exploración >> Opciones generales», donde marcaremos todas las casillas disponibles.

Una vez habilitadas todas las opciones, continuaremos con el análisis desde «Wordfence >> Analizar >> Iniciar una nueva exploración».

Si se detecta malware en el análisis, Wordfence te permite aplicar ciertas medidas contra esos ficheros; no obstante, nosotros no haremos uso de estas opciones que nos brindan, ya que llevaremos a cabo la desinfección completa de la web de forma manual para asegurar que todo quede totalmente limpio.
Como te señalamos antes, hay otros plugins de análisis que podrías emplear, como puede ser “Anti-Malware Security and Brute-Force Malware”, sobre el cual nuestro compañero Álvaro tiene un vídeo explicativo en su canal de Youtube:
Análisis por terminal («wp-cli» y otros comandos)
No todo el mundo cuenta con acceso SSH a las instalaciones alojadas en su servidor; no obstante, si es posible, WordPress dispone de una herramienta denominada WP-Cli, que posibilita interactuar y gestionar sitios webs de WordPress a partir de una serie de comandos.
Conviene aclarar que este tipo de sistema es algo más avanzado y muy potente, por lo que no te aconsejamos usarlo si no estás familiarizado en cierta medida con este tipo de herramientas.
Algunos de los comandos más interesantes que nos deja emplear esta herramienta son:
wp core verify-checksums
wp plugin verify-checksums –all
El primero examinará el núcleo de WordPress en busca de archivos que estén modificados o que no deberían existir en él.

El segundo hará el mismo proceso con todos los plugins de la web.
Como puedes comprobar, esto te permitiría analizar los archivos del núcleo y de los plugins de WordPress, si bien sería necesario ejecutar comandos adicionales de Linux para verificar toda la instalación por completo (por ejemplo, buscando ficheros con el comando “find” o haciendo alguna búsqueda de cadenas de texto con “grep”).
En nuestro blog, contamos con un par de guías relacionadas con este tipo de comandos, por lo que te aconsejamos echarles un vistazo si quieres saber más sobre estas herramientas:
Sustituir todos los archivos genéricos de WordPress, plugins y tema
Una vez hayamos detectado el malware en la web, habría que continuar con la desinfección completa de la misma.
Como ya señalamos anteriormente, es probable que las herramientas de análisis no detecten todos los archivos infectados, por lo que resulta necesario reemplazar todos los archivos originales de WordPress, plugins y el tema que uses.
Eliminar solo los archivos que han detectado las herramientas de análisis no es una solución viable, ya que además de lo dicho antes, es muy probable que se vuelvan a generar los mismos archivos infectados en la instalación.
Por otro lado, habría que comprobar si alguno de los elementos que tenemos instalados en nuestra web puede tener alguna vulnerabilidad o si se actualizan con normalidad.
Con esto queremos decir que aunque tengas instalada la última versión de un plugin en la web, puede que este no reciba actualizaciones desde hace años (o incluso que ya no pueda descargarse por algún motivo), por lo que no es aconsejable mantenerlo por cuestiones de seguridad y compatibilidad.

Nuestra recomendación es que no tengas elementos en tu web que lleven más de 1 año sin recibir actualizaciones. Hay infinidad de plugins en WordPress, y seguramente encuentres uno que haga las mismas funciones y que se actualice periódicamente.
Otro punto a tener en cuenta con el proceso de desinfección es que se perderían todas las personalizaciones que hayamos hecho en cualquier elemento (por ejemplo, si hemos añadido algún tipo de código al tema), ya que se van a instalar las versiones originales de los mismos.
Aclarado todo esto, y antes de continuar con el proceso de desinfección, también sería aconsejable que revises y limpies los equipos que uses para gestionar la web, además de cambiar todas las contraseñas que tenías guardadas en él.
Una vez hecho esto, podemos continuar con la desinfección:
Lo primero que tenemos que hacer es una copia de seguridad, para poder restaurarla si surge algún tipo de problema. Como indicamos antes, el objetivo final de la desinfección es reemplazar todos los archivos de la web, por lo que vamos a descargar la última versión de WordPress desde la plataforma original, y la colocaremos en una nueva carpeta en tu equipo.

En este punto es donde deberías comprobar que no tengas instalados elementos con vulnerabilidades o que lleven mucho tiempo sin recibir actualizaciones. Después, vamos a descargar también la última versión de los plugins que tengamos instalados del propio repositorio de WordPress (o de su plataforma correspondiente en caso de que sea de pago), y los dejaremos dentro de la carpeta de “Plugins” en el WordPress que acabamos de descargar.

Después de esto, quedaría por hacer lo mismo con la plantilla que está activa en el sitio, así que descargaremos su versión más reciente y la colocaremos en el directorio de “themes” de la nueva instalación que estamos montando (conviene tener solo una plantilla instalada, puesto que una plantilla desactivada y sin actualizar puede ser fuente de infecciones). Ten presente que se perderán todas las personalizaciones o el código que tuvieras aplicado en ella, lo que puede ocasionar ciertos cambios en el funcionamiento o el diseño del sitio; aun así, es un riesgo que hay que asumir para asegurar una limpieza total del virus. Hecho esto, habría que borrar por completo la instalación original, salvo la carpeta “uploads”, que contiene todos los archivos multimedia del sitio. Dentro de la carpeta “uploads” también habría que eliminar todos los contenidos, excepto las carpetas en las que se guardan los medios (las que por defecto llevan el nombre del año y los meses), que sería lo único que no habría que borrar en el proceso.

Aunque no es habitual hallar archivos infectados en el directorio de medios, conviene hacer búsquedas en él por si hubiera alguno.
Lo más adecuado es buscar archivos con extensión PHP, CSS, JS o XML (desde el propio gestor de archivos o mediante algún comando por terminal, si se tiene disponible), dado que estos directorios no suelen contener ficheros de ese tipo.
Cuando hayamos revisado la carpeta de uploads y eliminado todos los contenidos prescindibles de ella, llegaría el momento de subir la carpeta que preparamos antes con todos los archivos actualizados (añadiéndole el directorio de uploads ya revisado), ya sea por FTP o desde el gestor de archivos de tu proveedor de hosting; con esto, solo faltaría comprobar que la web funciona correctamente.
En la gran mayoría de los casos de infección, esto debería bastar para resolverla; no obstante, te aconsejaríamos llevar a cabo algunas comprobaciones adicionales para asegurarlo (además de ciertas acciones de securización que te indicaremos más adelante).
En ocasiones, pueden quedar activos algunos procesos derivados de la infección que podrían causar problemas más tarde, por lo que habría que terminar con dichos procesos (es posible que tengas que pedírselo a tu proveedor de alojamiento).
Otro aspecto que te recomendamos comprobar es que no tengas tareas cron maliciosas creadas en tu panel de control.
Por otra parte, hay que considerar que aunque la mayoría de las infecciones las provocan los ficheros de la web, en determinadas ocasiones pueden proceder de la propia base de datos, normalmente con algún código inyectado en ella.
Este tipo de infecciones son las más difíciles de detectar y no contamos con ningún método exacto para encontrarlas; aun así, podrías buscar ciertas cadenas de texto desde el propio phpMyAdmin.
Por lo general, este tipo de infecciones se llevan a cabo mediante inyecciones en la base de datos, sobre todo de JavaScript, por lo que podemos buscar las cadenas “%<script%” o “%javascript%” y revisar las coincidencias (seguramente haya resultados legítimos, ya que puede haber muchos tipos de scripts o contenidos JS en una web).

Tareas adicionales de securización
Una vez que hayamos desinfectado la web por completo, te indicamos a continuación una serie de tareas que conviene realizar para asegurar que la infección no vuelva a producirse:
- Cambiar todas las contraseñas de la web y del propio panel de control: es importante que modifiques las contraseñas de todos los usuarios con privilegios de administrador en WordPress, la contraseña de la base de datos, la del panel de control (ya sea cPanel, Plesk, Vesta CP, etc.) y la de todas las cuentas FTP que tengas creadas.
- Instalar algún plugin de seguridad: existen multitud de plugins de seguridad en WordPress que te permitirán aplicar algunas configuraciones de seguridad en la web, como puede ser el cambio de URL por defecto del login de WordPress, protección contra ataques de fuerza bruta, configuración de reCaptcha, etc.
En nuestro caso, solemos dejar instalado y configurado el plugin de Wordfence, aunque podrías optar por otros como pueden ser “Wp Cerber”, “better-wp-security» o “all-in-one-wp-security-and-firewall».
- Actualizar la web de forma periódica y no instalar elementos nulled o pirata para que no vuelva a repetirse el problema.
Aparte de esto, existen muchas más tareas de securización que podemos aplicar en WordPress, aunque ya tenemos una guía hablando sobre ello: https://alvarofontela.com/seguridad-wordpress/ o https://raiolanetworks.com/blog/guia-de-seguridad-para-wordpress/
No obstante, en caso de infección, sería muy recomendable llevar a cabo estos 3 puntos que te indicamos anteriormente.
Volver a analizar WordPress
Una vez realizados todos los pasos anteriores, nuestro sitio web debería quedar completamente limpio; aun así, lo ideal sería hacer un nuevo análisis de la instalación para comprobar si se nos ha podido escapar algo.
En este caso, podemos emplear las mismas herramientas indicadas anteriormente (plugins de WordPress, herramientas externas como Sucuri, etc.) y también podemos pedirle a nuestro proveedor de alojamiento que haga un análisis por su parte; recuerda que cuantas más herramientas pasemos, mejor, ya que no todas ellas disponen de la misma base de datos.

Sería muy extraño que, realizando todo el proceso de desinfección y aplicando todas las configuraciones indicadas en este post, se nos escape alguna cosa; no obstante, sí que pueden existir casos en los que la infección no se “perciba” a simple vista y solo pueda detectarse al visitar la web mediante algún «user-agent» en específico, aunque suelen ser casos muy concretos.
En cualquier caso, recuerda que desde Raiola Networks disponemos de un servicio de desinfección profesional en WordPress, por lo que si quieres que nos encarguemos nosotros del proceso, tan solo tendrías que contactarnos.
¿Cómo solicitar una revisión del sitio a Google después de desinfectarlo?
Una vez finalizado todo el proceso, y si Google había marcado nuestra página web como peligrosa o insegura, lo que habría que hacer sería solicitar una revisión al propio Google desde la herramienta de Google Webmasters (necesitas tener verificada la propiedad del dominio en Google Search Console).
Te recomendamos revisar este enlace en el que se habla de ello: https://support.google.com/webtools/answer/7539003?hl=es
Cuando solicites la revisión, ten en cuenta que cuanta más información facilites a Google sobre como has solucionado el problema, mejor, puedes enviarles incluso análisis de distintas herramientas, incluida la suya propia: https://transparencyreport.google.com/safe-browsing/search?hl=es
Preguntas Frecuentes
¿Cómo puedo eliminar un virus de WordPress?
Para eliminar un virus, primero identifica los archivos infectados con un escaneo de malware. Luego, reemplaza los archivos del núcleo, plugins y temas por versiones limpias, y revisa la base de datos en busca de código malicioso. No basta con borrar archivos; hay que eliminar backdoors y usuarios sospechosos. Si no controlas el servidor, pide ayuda a tu proveedor de hosting.
¿Cuál es el mejor antivirus para WordPress?
No hay un antivirus universal, pero Wordfence y Sucuri son opciones populares. Wordfence ofrece escaneo gratuito y firewall, mientras que Sucuri es un servicio de pago con limpieza incluida. Para un enfoque más técnico, Imunify360 en el servidor ayuda. Lo importante es mantener el plugin actualizado y combinarlo con buenas prácticas de seguridad, como contraseñas robustas y copias de seguridad.
¿Cómo puedo limpiar la caché de WordPress?
La caché se limpia desde el plugin que la gestiona, como W3 Total Cache o WP Rocket, usando la opción ‘Vaciar caché’. Si usas caché del servidor (Varnish, Nginx), contacta a tu hosting. También puedes borrar la carpeta wp-content/cache por FTP. Después de desinfectar, limpia la caché para evitar que se sirvan versiones infectadas a los visitantes.