Caso real 1 virus wordpress

Caso Real: Limpieza de Malware Masivo y Reinstalación Segura de WordPress con WP-CLI

En DrWordpress.net atendemos a diario casos de sitios WordPress comprometidos por infecciones que afectan la estabilidad, el posicionamiento y la seguridad de los proyectos de nuestros clientes. En este artículo te compartimos el resumen técnico de un caso real y reciente, en el que nos enfrentamos a una infección masiva que había generado decenas de miles de archivos maliciosos en el servidor.

Este tipo de casos no solo requieren experiencia técnica, sino también un enfoque quirúrgico para no dañar el contenido legítimo (como imágenes y documentos). A continuación te mostramos cómo lo resolvimos paso a paso, manteniendo el contenido intacto y asegurando una reinstalación 100% limpia de WordPress.

El Problema: Infección masiva con archivos .php sospechosos

El cliente nos contactó al notar comportamientos anómalos en su sitio. Tras una primera inspección, encontramos archivos como:

aprbpesi.php
gebsapex.php
mymqcdav.php
ileorhoy.php
.... (ect)

Se trataba de miles de archivos con nombres aleatorios dispersos por todo el sistema de archivos: en wp-includes, plugins, themes, e incluso en uploads. La mayoría tenían 0 bytes y todos compartían la misma fecha de creación, lo que facilitó su identificación.

Paso 1: Identificación y eliminación de archivos maliciosos

Nos enfocamos en detectar los archivos .php vacíos creados en la misma fecha (25 de junio). Esto nos permitió eliminarlos con precisión:

find . -type f -name "*.php" -size 0c -newermt 2024-06-25 ! -newermt 2024-06-26 -exec rm -f {} \;

Posteriormente, aplicamos una limpieza complementaria para eliminar archivos .php con nombres aleatorios sospechosos:

find . -type f -regex './[a-z]\{8\}\.php$' -exec rm -f {} \;

Paso 2: Protección de la carpeta uploads sin afectar imágenes

Uno de los errores más comunes al limpiar WordPress es borrar imágenes o archivos legítimos. Nosotros protegimos el contenido evitando la ejecución de archivos .php dentro de /wp-content/uploads/ mediante un .htaccess:

<FilesMatch "\.php$">
  Require all denied
</FilesMatch>

Esto evita que cualquier archivo .php colocado maliciosamente en esa carpeta pueda ejecutarse.

Paso 3: Reinstalación del núcleo de WordPress con WP-CLI

Una vez limpio el entorno, usamos WP-CLI para reinstalar el núcleo oficial de WordPress, sin afectar contenido:

wp core download --force

Verificamos integridad con:

wp core verify-checksums

Y actualizamos la base de datos:

wp core update-db

Paso 4: Reinstalación de plugins y temas

Reinstalamos todos los plugins activos directamente desde el repositorio oficial, lo que garantiza que no queden versiones modificadas:

wp plugin list --status=active --field=name | xargs -n1 wp plugin install --force

Paso 5: Refuerzo de seguridad post-limpieza

Para cerrar puertas traseras, configuramos el wp-config.php con parámetros de seguridad como:

wp config set DISALLOW_FILE_EDIT true --raw
wp config set WP_AUTO_UPDATE_CORE true --raw

Así, deshabilitamos la edición de archivos desde el panel y forzamos actualizaciones automáticas del núcleo.

Resultado Final y Recomendaciones

Luego de ejecutar el proceso completo de limpieza, validación y reinstalación segura:

  • El sitio quedó libre de archivos .php maliciosos, eliminando miles de archivos con nombres aleatorios y tamaño 0 bytes, los cuales estaban distribuidos en múltiples carpetas del núcleo de WordPress.
  • Se preservó intacto el contenido visual, incluyendo imágenes, documentos y elementos multimedia alojados en wp-content/uploads, garantizando la continuidad visual y funcional del sitio.
  • Se reinstaló un núcleo limpio y verificado de WordPress, junto con plugins y temas confiables descargados directamente desde fuentes oficiales, descartando cualquier modificación externa o sospechosa.
  • Se aplicaron medidas de endurecimiento de seguridad, como restricciones sobre la carpeta uploads y bloqueos de edición en el panel administrativo, para evitar futuras inyecciones o manipulaciones de archivos.

Resultado Final y Recomendaciones

Luego de ejecutar el proceso completo de limpieza, validación y reinstalación segura:

  • El sitio quedó libre de archivos .php maliciosos, eliminando miles de archivos con nombres aleatorios y tamaño 0 bytes, los cuales estaban distribuidos en múltiples carpetas del núcleo de WordPress.
  • Se preservó intacto el contenido visual, incluyendo imágenes, documentos y elementos multimedia alojados en wp-content/uploads, garantizando la continuidad visual y funcional del sitio.
  • Se reinstaló un núcleo limpio y verificado de WordPress, junto con plugins y temas confiables descargados directamente desde fuentes oficiales, descartando cualquier modificación externa o sospechosa.
  • Se aplicaron medidas de endurecimiento de seguridad, como restricciones sobre la carpeta uploads y bloqueos de edición en el panel administrativo, para evitar futuras inyecciones o manipulaciones de archivos.

¿Tu sitio fue infectado con archivos raros como xjgyplov.php, jkmsodtp.php o similares?

Este tipo de infecciones silenciosas pueden pasar desapercibidas durante semanas, especialmente si no se realiza mantenimiento técnico regular.

En DrWordpress.net ofrecemos:

  • Limpieza de malware
  • Reinstalación segura
  • Auditorías de seguridad
  • Soporte técnico personalizado

Facebook
Twitter
LinkedIn

Atención Urgente WhatsApp

En casos urgentes, como caídas totales o hackeos, podemos revisar tu sitio de forma inmediata, dependiendo de la disponibilidad de nuestro equipo técnico.

¡Tu emergencia es nuestra prioridad!

Este servicio puede tener un costo adicional, que varía según la gravedad del problema y el tiempo requerido para la atención prioritaria.

Política de Contacto

Contacto Urgente

Nuestro equipo está listo para atenderte. En menos de 1 hora te contactaremos para conocer y resolver tu caso rápidamente.

¡Tu emergencia es nuestra prioridad!

Para garantizar un proceso eficiente y trazable, nuestro contacto inicial es exclusivamente por medio de este formulario.

Política de Contacto

  • Horario Hábil: Respuesta 1 Día Hábil | Hoy es Lunes

Solicitar Servicio

Déjanos los detalles de tu sitio y el problema que estás enfrentando. Te responderemos con una solución y cotización personalizada en menos de 24 horas.

¡Tu emergencia es nuestra prioridad!

Para garantizar un proceso eficiente y trazable, nuestro contacto inicial es exclusivamente por medio de este formulario.

Política de Contacto

  • Horario Hábil: Respuesta 1 Día Hábil | Hoy es Lunes