Caso real · Limpieza de malware
Nos hackearon el sitio. Así lo limpiamos
En casa del herrero, cuchillo de palo: nuestro propio sitio, krato.com.mx, cuando todavía era WordPress, estuvo meses infectado con spam de apuestas que nosotros no veíamos, pero Google sí. Lo contamos completo porque es exactamente lo que les pasa a muchas empresas, y porque la forma de resolverlo es la misma.
Qué estaba pasando
A simple vista el sitio se veía normal. Pero en el código de cada página había un bloque colocado fuera de la pantalla con unos 160 enlaces a sitios de apuestas turcos. Además, cuando quien visitaba era el rastreador de Google, el sitio le mostraba páginas de casino que en realidad no existían. Google llegó a indexar varias con nuestro dominio, y la portada aparecía en búsquedas como "casino" o "bonus".
Línea de tiempo
- Mayo de 2026
Alguien instala un plugin falso llamado "Cloudflare-v2.23". El plugin se esconde de la lista de plugins de WordPress, así que desde el panel no se ve.
- Mayo a octubre
El plugin crea unas 100 entradas de spam y empieza a servir miles de páginas falsas solo a los buscadores. Google las rastrea e indexa algunas.
- 14 de octubre
Una primera limpieza elimina los enlaces de casino que estaban dentro del contenido de las páginas. El spam parece resuelto, pero el plugin sigue instalado.
- 20 de octubre
Al revisar el sitio a fondo, encontramos el bloque oculto otra vez en todas las páginas: el origen nunca se había eliminado.
- 20 de octubre · limpieza de raíz
Encontramos el plugin, lo pusimos en cuarentena, borramos las categorías, entradas e imágenes de spam y confirmamos que más de 2,100 URLs falsas ya respondían "no existe".
- 20 de octubre · Google
En Search Console confirmamos que no había acción manual, retiramos las URLs de spam, quitamos un sitemap sospechoso que alguien había dado de alta en 2024 y pedimos volver a indexar las páginas reales.
- Mismo día · adiós WordPress
Migramos krato.com.mx a un sitio estático, sin plugins que se puedan infectar, y eliminamos el WordPress por completo. Además, el sitio pasó de tardar unos 2 segundos en responder a unos 0.2.
Cómo lo encontramos
El spam no estaba en la base de datos ni en los archivos del tema, así que una revisión normal no lo encontraba. La pista fue comparar cada plugin instalado contra las firmas oficiales de WordPress: el único que no tenía firma era el falso. Al abrirlo, el resto fue evidente.
Indicadores de este plugin falso, por si te pasa lo mismo:
- Carpeta
wp-content/plugins/cloudflare-v2-23/, nombre "Cloudflare-v2.23", autor "WpDevNinjas". - No aparece en la lista de plugins del panel (se oculta a sí mismo).
- Descarga el spam de un servidor externo (
football2026.life) con la dirección escrita en código hexadecimal. - Trae una lista de direcciones IP de Google para mostrarle el spam solo a sus rastreadores.
- Inserta un bloque con
position:absolute;left:-11170pxal inicio del contenido de cada página. - Se detecta con
wp plugin verify-checksums --all: es el plugin que no tiene firma oficial.
Lo que aprendimos (y aplicamos con nuestros clientes)
- Si el spam regresa, el origen sigue ahí. Borrar los enlaces visibles no sirve si el código que los genera sigue instalado.
- Revisa tu sitio como lo ve Google. El encubrimiento hace que tú veas una página limpia mientras Google ve otra.
- Compara contra las firmas oficiales. Lo que no coincide con la versión original de WordPress o del plugin es sospechoso.
- Revisa Search Console. Sitemaps, propietarios y URLs que no reconoces son señales de que alguien más tuvo acceso.
- Revisa los vecinos. Después de limpiar, revisamos todos los demás sitios de nuestros servidores: ninguno tenía la misma infección.
- Pregúntate si tu sitio necesita WordPress. Un sitio informativo puede ser estático: más rápido, más barato de mantener y sin plugins que hackear.
¿Crees que tu sitio tiene algo parecido?
Mándanos la dirección por WhatsApp. Lo revisamos como lo ve Google y te decimos qué encontramos.
Revisa tu sitio gratis · Más sobre este tipo de problemas: spam de casino en tu página, página web hackeada y sitio marcado como peligroso.