UA-51298262-10 Skip to main content
Seguridad

Eliminar malware WordPress: guía completa

By agosto 5, 2026No Comments
Eliminar malware WordPress: guía completa

Introducción: La amenaza del malware en WordPress

Descubrir que tu sitio ha sido comprometido es una pesadilla. De verdad, se te revuelve el estómago. Aprender a eliminar malware WordPress deja de ser algo técnico y se convierte en una competencia de supervivencia, porque los ataques no solo manchan tu reputación; también te hundirán en los resultados de búsqueda y pondrán en riesgo los datos de tus usuarios. Google no perdona: suele bloquear sitios infectados con ese cartel aterrador de «Este sitio puede dañar tu computadora». El tráfico se cae por un abismo. Por eso hay que actuar ya, con rapidez y precisión, para que el daño no sea irreversible.

¿Cómo saber si tu WordPress está infectado?

Antes de empezar a limpiar, hay que estar seguro. No vale el presentimiento. Los síntomas a veces son sutiles, otras veces gritan, pero existen señales claras de que hay código malicioso campando a sus anchas. Hacer una auditoría inicial te ayuda a dimensionar el desastre.

Síntomas comunes de infección

Cuando el sitio empieza a comportarse de forma extraña, es el primer aviso. Debes estar muy atento a estas cosas:

  • Redirecciones raras: Alguien entra a tu página y, de golpe, sale disparado hacia webs de apuestas, farmacias o porno sin haber hecho clic en nada.
  • El sitio se arrastra: Un script malicioso consumiendo los recursos del servidor puede hacer que la carga de las páginas se vuelva eterna.
  • Usuarios fantasmas: De pronto aparecen nuevos administradores o editores que tú nunca creaste.
  • Código sospechoso a la vista: Enlaces ocultos en el pie de página o anuncios de medicamentos invasivos que, por mucho que desactives los plugins, siguen ahí.

Herramientas de diagnóstico externo

Si sospechas pero no tienes certeza, usa herramientas gratuitas como Google Search Console. En la parte de «Problemas de seguridad», el buscador te avisa si ha detectado inyecciones de código o phishing. Otras opciones como VirusTotal o Sucuri SiteCheck sirven para escanear la URL sin instalar nada en tu servidor. Lo hacen comparando tu sitio con listas negras y buscando patrones de JavaScript ofuscado.

Nota técnica: Muchos ataques de SEO Spam son invisibles para las personas, solo los ven los bots de Google. Usa la función «Inspeccionar elemento» en tu navegador buscando etiquetas <iframe> o <script> desconocidos, o mira el código fuente completo (Ctrl+U) para ver lo que realmente está viendo el buscador.

Paso 1: Preparación antes de la limpieza

Intentar eliminar malware WordPress sin preparar el terreno puede causar más daño que la propia infección. Si borras un archivo del sistema core equivocado, puedes dejar tu sitio muerto para siempre. Sigue estos pasos obligatorios antes de tocar una sola línea de código.

Copias de seguridad totales

Haz una copia de seguridad completa. De todo: archivos y base de datos. No confíes solo en las copias automáticas que tengas, porque si el ataque lleva tiempo activo, es muy probable que también estén infectadas. Descarga los archivos por FTP y exporta la base de datos con phpMyAdmin o desde la terminal con mysqldump. Guarda esa copia en un lugar seguro, fuera del servidor.

Poner el sitio en modo mantenimiento

Es vital cortar el tráfico mientras limpias. Instala un plugin de modo mantenimiento o edita el archivo .htaccess para redirigir a todos los visitantes a una página estática, menos a ti (a tu IP). Así evitas que los visitantes se lleven un susto o que Google siga indexando contenido malicioso mientras trabajas en la solución.

Paso 2: Escaneo y detección de archivos maliciosos

Con el sitio aislado y respaldado, empieza la fase de identificación. Aquí no puedes ser impacientes; hay que ser minucioso. El malware se esconde en los lugares más comunes y usa trucos de ofuscación para pasar desapercibido.

Verificación de archivos Core de WordPress

Compara tus archivos principales de WordPress con los originales de wordpress.org. Los archivos del directorio raíz (como wp-config.php, wp-login.php) y los de /wp-admin/ y /wp-includes/ no deberían tener modificaciones. Si ves diferencias, es casi seguro que han inyectado algo. Herramientas como WP-CLI te ayudan a verificar la integridad con el comando wp core verify-checksums.

Análisis de temas y plugins

Aquí es donde suele estar el problema. Los temas nulled (esos gratuitos pero pirateados) y los plugins desactualizados son una puerta abierta de par en par.

  • Revisa el archivo functions.php de tu tema activo. Busca código codificado en base64 (esas cadenas larguísimas de letras y números) o llamadas a funciones como eval(), base64_decode(), gzinflate(), o str_rot13(). Se usan mucho para esconder scripts maliciosos.
  • Desactiva todos los plugins. Si la infección desaparece, actívalos de uno en uno hasta dar con el culpable.
  • Busca carpetas con nombres raros en /wp-content/uploads/. Los atacantes suelen subir shells de PHP (webshells) disfrazadas de imágenes ahí, porque esa carpeta suele tener permisos de escritura.

Consejo Pro: Usa el comando find en tu terminal Linux para buscar archivos modificados recientemente. Por ejemplo: find . -type f -mtime -7 te mostrará todos los archivos modificados en los últimos 7 días, algo clave para localizar el backdoor rápido.

Paso 3: Limpieza manual del sistema

Una vez sabes qué archivos están infectados, toca eliminar malware WordPress a mano. Es el método más seguro; las herramientas automáticos a veces se pasan por alto infecciones complejas o con variables.

Edición del archivo .htaccess

El archivo .htaccess es un objetivo favorito para redirigir el tráfico. Ábrelo y busca líneas de código que no reconozcas, sobre todo reglas de reescritura (RewriteRule) que apunten a dominios externos. Una solución rápida es renombrar el .htaccess a .htaccess.old y luego ir a Ajustes > Enlaces permanentes en tu panel y guardar los cambios para que se genere uno nuevo y limpio.

Limpieza de la base de datos

El malware también vive en la base de datos. Toca ejecutar consultas SQL para limpiar el contenido. Antes, asegúrate de tener tu copia de seguridad de la base de datos a mano por si algo sale mal.

Para buscar enlaces maliciosos en el contenido de tus posts (por ejemplo, enlaces metidos en comentarios o artículos), puedes usar una consulta como esta en phpMyAdmin:

SELECT * FROM wp_posts WHERE post_content LIKE '%<script>malicioso%' OR post_content LIKE '%iframe%'

Si encuentras registros, edita a mano o usa una sentencia UPDATE para reemplazar el texto malicioso por una cadena vacía. Cuidado con escapar bien las comillas.

Paso 4: Reparación y endurecimiento de seguridad

¿Ya eliminaste el código malicioso? No te relajes. Todavía no has terminado. Tienes que cerrar las brechas por las que entraron. Si no lo haces, el atacante volverá en cuestión de horas o días.

Actualización forzosa de todo

Asegúrate de que WordPress, todos los temas y todos los plugins estén en su última versión. Las vulnerabilidades conocidas se parchean en las actualizaciones, y dejar software obsoleto es la causa número uno de que te vuelvan a infectar.

Cambio de credenciales y claves de seguridad

Asume lo peor: que las contraseñas de los administradores han sido robadas. Cambia todas las contraseñas de los usuarios con privilegios, preferiblemente por unas largas y únicas de más de 12 caracteres. Además, genera nuevas claves de seguridad editando el archivo wp-config.php. Puedes sacar claves aleatorias nuevas en la API de WordPress.org y reemplazar las líneas definidas por define('AUTH_KEY',...); y demás. Esto desconectará a todos los usuarios actuales e invalidará cualquier cookie robada.

Limitar el acceso al área de administración

Restringe el acceso a /wp-admin/ y wp-login.php solo a tu dirección IP usando el archivo .htaccess o un plugin de seguridad. Así evitas que los bots de fuerza bruta intenten adivinar tu contraseña. También deshabilita la edición de temas y plugins desde el panel añadiendo esta línea a tu wp-config.php:

define( 'DISALLOW_FILE_EDIT', true );

Prevención futura: Mantén tu guardia alta

Eliminar malware es solo la mitad de la batalla. La seguridad es un proceso, no un destino. Implementa un Web Application Firewall (WAF) para bloquear el tráfico malicioso antes de que llegue a tu servidor. Haz escaneos programados y vigila los logs de acceso de tu servidor buscando actividades raras, como múltiples intentos de login fallidos o solicitudes POST extrañas a archivos que no deberían recibirlas.

Conclusión

Saber detectar y eliminar malware WordPress es esencial para que tu sitio web sobreviva, pero es un proceso técnico que requiere paciencia y ojo avizor. Desde que identificas los síntomas y aíslas el sitio, hasta que limpias la base de datos a mano y endureces la seguridad, cada paso es crucial para que la infección no solo desaparezca, sino que no vuelva. Si en algún punto te sientes abrumado o el malware persiste a pesar de tus esfuerzos, recuerda que en RedServicio (redservicio.net) tenemos expertos listos para ayudarte a recuperar el control total de tu servidor y tu web. No dejes la seguridad de tu negocio al azar; actúa hoy mismo para proteger tu presencia digital.

Preguntas Frecuentes

¿Es suficiente con instalar un plugin de antivirus?

No siempre. Los plugins son útiles para prevenir y detectar, pero a menudo no pueden limpiar infecciones complejas en la base de datos o en los archivos del sistema core. Una limpieza manual suele ser necesaria para asegurar una recuperación total.

¿Puedo confiar en mis copias de seguridad antiguas?

Ten cuidado. Si el ataque ocurrió hace semanas y tus copias de seguridad son de ayer, es probable que esa copia también esté infectada. Analiza siempre los archivos de la copia antes de restaurarlos sobre el sitio limpio.