Loading...
Mantención Web: Así Hackean tu WordPress

En InnoWeb vivimos en primera persona uno de los ataques más sofisticados que hemos visto en sitios WordPress: una infección de origen indonesio que pasó completamente desapercibida para los propietarios de los sitios afectados, hasta que Google empezó a mostrar resultados en indonesio sobre casinos online bajo sus propios dominios. En este artículo contamos todo: cómo entró, qué hizo, cómo lo detectamos y cómo lo resolvimos. Si tienes un sitio WordPress sin mantención web activa, este artículo es para ti.


¿Cómo empieza todo? La puerta de entrada

Este tipo de ataque no es aleatorio ni manual. Son campañas automatizadas — bots que escanean miles de sitios WordPress en simultáneo buscando vulnerabilidades conocidas. Su objetivo preferido: sitios sin mantención web, con plugins desactualizados, contraseñas débiles o temas sin parches de seguridad.

Una vez que el bot identifica una brecha, el ataque se ejecuta en etapas:

Etapa 1 — Creación de usuario administrador falso. El primer movimiento es silencioso: se crea un usuario con rol de Administrador en WordPress usando una cuenta que no reconoces. Nombre genérico, correo de dominio desconocido. Si no revisas tus usuarios periódicamente (parte de cualquier mantención web básica), este usuario puede existir durante semanas sin que lo notes.

Etapa 2 — Instalación de un File Manager con acceso a cPanel. Con acceso de administrador ya establecido, el atacante instala un plugin de gestión de archivos que se conecta directamente con el panel de alojamiento (cPanel). Este tipo de plugin, aunque tiene usos legítimos, en manos equivocadas equivale a darle acceso completo al servidor a alguien que no debería tenerlo. Desde ahí, pueden crear, modificar y eliminar cualquier archivo del sitio sin límites.

Etapa 3 — Escalamiento a nivel de cuenta de hosting. Con escritura libre sobre los archivos del servidor, el atacante instala backdoors (puertas traseras) camuflados como archivos del núcleo de WordPress: nombres como credits-query.php, widgets-less.php, module.audio.dts-view.php o border-list.php dentro de carpetas como wp-admin o wp-includes, donde nadie los buscaría. Estos backdoors permiten ejecución remota de código con solo visitar una URL con un parámetro específico — sin necesidad de iniciar sesión en ningún panel.

Etapa 4 — Acceso a Google Search Console. Usando el acceso que ya tienen sobre los archivos del sitio, suben un archivo de verificación de Google al servidor y se agregan como Propietario de la propiedad en Search Console. Esto les da control sobre qué páginas Google indexa y cuáles no, y les permite solicitar la indexación de sus páginas falsas directamente, sin esperar el proceso normal de rastreo.


El ataque en sí: spam SEO con cloaking

Una vez con acceso total, el objetivo del atacante no es destruir el sitio — es usarlo. Específicamente, usarlo como plataforma para posicionar contenido de apuestas online en Google, sin que el propietario del sitio ni sus visitantes se enteren.

La técnica se llama cloaking con spam SEO:

Crean carpetas físicas con nombres de páginas reales del sitio. WordPress genera sus URLs de forma dinámica (sin carpetas reales en el disco). El atacante aprovecha exactamente eso: al crear una carpeta física con el mismo nombre que una página existente (/tienda, /contacto, /hola-mundo), Apache la sirve directamente sin pasar por WordPress, porque la regla estándar del archivo .htaccess dice «si existe una carpeta real con ese nombre, sirve esa carpeta».

Dentro de cada carpeta, el contenido es en indonesio, sobre casinos. Nombres de marcas como SL888, PT777, BARU01, H89, SUHU777 — plataformas de apuestas online del sudeste asiático que pagan por tráfico y posicionamiento.

El cloaking hace el contenido invisible para visitantes reales. El código detecta si quien visita la página es Googlebot (el robot de rastreo de Google) o un humano, y sirve contenidos distintos. Si eres humano, ves una página en blanco o el sitio normal. Si eres Googlebot, ves el contenido de casino. Por eso los propietarios no detectan nada raro al visitar su propio sitio.

Cada carpeta tiene su propio sitemap.xml. El atacante creó un sitemap maestro apuntando a sitemaps individuales en cada carpeta, y lo envió directamente desde su cuenta de Propietario en Search Console. Google lo rastreó e indexó en cuestión de horas.

Resultado: el dominio del cliente aparece en Google con resultados en indonesio sobre apuestas online, en las mismas URLs que corresponden a páginas reales del sitio. El cliente lo detecta solo cuando alguien le avisa, o cuando nota una caída inusual en el tráfico de sus páginas legítimas (Google empieza a desconfiar del dominio completo).


Cómo detectamos la infección

La mantención web no es solo actualizar plugins una vez al mes. Incluye monitoreo activo de señales de alerta. En este caso, la primera señal fue un cliente reportando «enlaces raros» en su sitio. A partir de ahí, el proceso de diagnóstico fue así:

  1. Búsqueda en Google con operadores avanzados (site:dominio.cl casino OR slot OR judi): confirmamos la existencia de páginas de apuestas indexadas bajo el dominio del cliente.
  2. Inspección de URLs en Search Console con «Probar URL publicada»: permite ver exactamente lo que ve Googlebot, no lo que ve un visitante humano. Ahí aparecen los contenidos en indonesio que el cloaking ocultaba.
  3. Revisión de usuarios de Search Console: detectamos una cuenta no reconocida con rol de Propietario.
  4. Revisión de usuarios de WordPress: encontramos administradores que no habían sido creados por nosotros.
  5. Revisión del File Manager en cPanel: identificamos carpetas físicas falsas en la raíz del sitio, todas creadas en el mismo minuto (señal inequívoca de un script automatizado), y un directorio duplicado de WordPress conectado a la misma base de datos de producción.
  6. Revisión de plugins: encontramos plugins con comportamiento de auto-reinstalación y otros con capacidad de conexión directa al panel de hosting.
  7. Análisis del wp-config-sample.php: que normalmente es una plantilla sin función real, contenía un backdoor de casi 30 KB con código obfuscado de ejecución remota, camuflado dentro de un array de cientos de fragmentos codificados en base64.
  8. Escaneo con herramienta especializada: identificó 9 archivos maliciosos adicionales dentro de carpetas del núcleo de WordPress e inyecciones de contenido oculto directamente en la base de datos.

Cómo lo resolvimos

La limpieza de un sitio comprometido a este nivel requiere trabajar en capas, no solo borrar un archivo y dar por terminado el problema. Estos fueron los pasos:

  • Eliminación del usuario no autorizado en Search Console y revocación de su verificación.
  • Eliminación de usuarios administradores falsos en WordPress.
  • Desinstalación de plugins maliciosos y aquellos con acceso a nivel de servidor.
  • Eliminación de todos los temas no reconocidos instalados por el atacante.
  • Renombrado y eliminación de las carpetas físicas falsas en la raíz del sitio.
  • Eliminación del directorio duplicado de WordPress.
  • Eliminación del dominio adicional no autorizado agregado a la cuenta de hosting.
  • Borrado de todos los archivos backdoor detectados por el escáner especializado.
  • Limpieza de inyecciones en la base de datos.
  • Rotación completa de contraseñas: cPanel, base de datos MySQL, y regeneración de claves de autenticación de WordPress (AUTH_KEY, salts).
  • Corrección de permisos de archivos críticos (wp-config.php en 0644, no 0666).
  • Eliminación de todos los sitemaps falsos enviados a Google y solicitud de reindexación de URLs afectadas.
  • Notificación al proveedor de hosting para revisión de logs de acceso a nivel de servidor.

Lo que quedó claro: la falta de mantención web tiene un costo real

Todos los sitios afectados tenían algo en común: ausencia de mantención web activa. Plugins sin actualizar durante meses, contraseñas que nunca habían sido rotadas, sin monitoreo de usuarios ni de archivos. No es culpa de los propietarios — la mayoría no sabe que esto ocurre en segundo plano, ni que un sitio WordPress requiere atención continua para mantenerse seguro.

La mantención web no es un gasto opcional. Es lo que separa un sitio que trabaja para tu negocio de uno que trabaja para alguien más sin que te enteres.

Una buena mantención web incluye:

  • Actualización periódica de WordPress, plugins y temas.
  • Monitoreo de usuarios administradores y accesos.
  • Revisión de archivos del servidor en busca de modificaciones no autorizadas.
  • Escaneo de malware con herramientas especializadas.
  • Rotación de contraseñas y revisión de permisos de archivos.
  • Monitoreo de Search Console para detectar anomalías de indexación.
  • Backup verificado y restaurable en caso de incidente.

¿Tu sitio puede estar en la misma situación sin que lo sepas?

El cloaking hace que este tipo de ataque sea especialmente difícil de detectar sin las herramientas correctas. Tu sitio puede verse perfectamente normal para ti y para tus clientes, mientras Google lleva semanas indexando contenido de casino bajo tu dominio.

Señales de alerta que no debes ignorar:

  • Caída inexplicable de tráfico orgánico.
  • Páginas de tu sitio apareciendo en Google con contenido que no reconoces.
  • Alertas en Google Search Console sobre «contenido pirateado».
  • Plugins que aparecen instalados sin que los hayas instalado tú.
  • Usuarios administradores en WordPress que no reconoces.

Si detectas alguna de estas señales, el tiempo importa — cada hora que el sitio permanece comprometido es una hora más de daño a tu reputación ante Google.


¿No sabes por dónde empezar o prefieres que lo hagamos nosotros?

En InnoWeb ofrecemos dos servicios para estos casos:

Mantención Web continua — para que tu sitio esté siempre actualizado, monitoreado y protegido, sin que tengas que preocuparte de nada. Prevención antes que curación.

Rescate y Recuperación — si tu sitio ya fue comprometido y necesitas limpieza urgente, diagnóstico completo y restauración de la seguridad. Intervenimos, limpiamos y dejamos el sitio estable.

Un sitio sin mantención web no es una pregunta de si va a colapsar — es una pregunta de cuándo. Podemos ayudarte antes de que llegue ese momento.

👉 **Contáctanos en innoweb.cl** y cuéntanos tu caso.

Compartir en:

Facebook

Linkedin

Twitter

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Artículos relacionados

Últimas novedades
InnoBlog.