Un cliente te manda una captura: al entrar en tu web le ha saltado una ventana que anuncia un premio, un aviso para «actualizar el navegador» o publicidad de apuestas. Tú no has contratado nada de eso. Antes de tocar nada hay que responder una pregunta: ¿sale de tu web o del ordenador de esa persona?
Aquí tienes cómo distinguirlo, dónde puede esconderse el código que lo muestra, cómo quitarlo y cómo evitar que vuelva. Y por qué, aunque no lo hayas puesto tú, Google lo trata como un problema de tu web.
Lo esencial
- Primero distingue el origen: si lo ven varias personas y solo en tu web, el problema está en tu web; si pasa en muchas webs, en el ordenador de quien mira.
- Aunque no lo hayas puesto tú, Google lo trata como un problema de tu web y puede marcarla como sitio engañoso.
- El código suele estar en el tema, en la base de datos, en un plugin falso o «nulled», en un servicio de terceros o en el .htaccess.
- Borrar el script es la mitad del trabajo: si no cierras la vía de entrada, volverá.
Comprueba si tu web esconde JavaScript ofuscado o redirecciones a terceros: análisis gratuito desde fuera, en unos segundos.
Analizar mi web ahora¿Es tu web o el navegador de quien la ve?
| Pista | Apunta al ordenador del visitante | Apunta a tu web |
|---|---|---|
| Dónde aparece | En muchas webs distintas, no solo en la tuya | Solo en tu web |
| A quién le pasa | A una persona concreta | A varias personas, en equipos distintos |
| Cómo se comporta | Pestañas que no se cierran, la página de inicio del navegador cambia sola | Sale al cargar o al hacer clic en tu página; a veces solo en móvil o solo al llegar desde Google |
| Qué hacer | Revisar el equipo y el navegador (ayuda de Chrome) | Seguir con esta guía |
Para comprobarlo tú: abre la web en otro dispositivo, con datos móviles, en una ventana de incógnito y sin extensiones. Pide a quien lo vio la dirección exacta, el dispositivo y la hora. Si solo pasa en móvil o solo la primera vez, no lo descartes: Google explica que los atacantes pueden desactivar el ataque si creen que quien visita la web es el propietario.
Por qué Google lo trata como un problema tuyo
Google lo deja claro en su página sobre ingeniería social: el contenido engañoso puede aparecer insertado, normalmente en anuncios, en webs que por lo demás son legítimas, y eso constituye una infracción de la página que lo aloja. Incluye el caso en que la web no muestra anuncios visibles pero manda a los usuarios a páginas engañosas mediante ventanas emergentes, ventanas subyacentes u otras redirecciones. La consecuencia puede ser el aviso de sitio web engañoso en Chrome.
Si te anuncias en Google Ads, los anuncios emergentes inyectados figuran entre los ejemplos de sitio web vulnerado, una causa de anuncios rechazados; lo contamos en qué hacer si Google Ads suspende tu cuenta por software malicioso.
De dónde pueden salir
- Código inyectado en el tema o en la base de datos. Un script añadido en la cabecera o el pie, en un widget, en las opciones del tema o dentro de entradas y páginas.
- Un plugin falso, comprometido o «nulled». Los plugins descargados de webs de piratería pueden traer código añadido, y los falsos se camuflan con nombres creíbles: en el caso SMILODON que documentamos, los plugins falsos se llamaban, por ejemplo,
wpstatsapioautoupdatery tenían autores inventados. - Un servicio de terceros que ya usabas. Una red publicitaria, un widget, un chat o un script externo que en algunas cargas sirve contenido engañoso. Google recuerda que ese contenido puede estar en recursos incluidos en la página, como imágenes, componentes de terceros o anuncios.
- Reglas en el servidor. Redirecciones en el
.htaccesso en la configuración que solo se activan para ciertos navegadores o para quien llega desde un buscador.
Cómo localizar el código, paso a paso
- Documenta antes de tocar. Captura, dirección exacta, dispositivo y hora. Haz una copia de ficheros y base de datos antes de cambiar nada.
- Mira el código de la página afectada desde un dispositivo en el que aparezca. Busca
<script src=e<iframeque apunten a dominios que no reconoces, y términos que Google sugiere revisar, comoeval,base64_decodeounescape. - Compara con lo que ve Google. La herramienta de inspección de URLs de Search Console te enseña la página tal como la ve Google, y un análisis externo como PathScan compara la vista de un visitante con la de Googlebot y busca JavaScript ofuscado y redirecciones a terceros.
- Revisa WordPress por dentro: los campos de código de cabecera y pie del tema o de los plugins que añaden scripts, los widgets, la lista de plugins (borra los que no reconozcas o no uses) y la carpeta
wp-content/mu-plugins, cuyos plugins se cargan siempre, no se pueden desactivar desde el panel y solo aparecen en una pestaña aparte de la pantalla de plugins. - Busca en la base de datos el dominio que viste en el código, sobre todo en las tablas de opciones y de entradas.
- Descarta a tus proveedores: quita temporalmente la red publicitaria o el widget externo y comprueba si el problema desaparece.
- Revisa el
.htaccessen busca de reglas que tú no pusiste, sobre todo condiciones sobre el navegador o la procedencia de la visita.
Si lo que encuentras es una redirección más que un anuncio, sigue con cómo encontrar y quitar una redirección.
Quitarlo sin que vuelva
Borrar el script es la mitad del trabajo. La otra mitad es cerrar la puerta por la que entró, o volverá:
- Actualiza el núcleo, los plugins y el tema, y elimina lo que no uses.
- Cambia las contraseñas del hosting, FTP o SFTP, base de datos y administradores, y revisa que no haya administradores que no reconoces.
- Busca las puertas traseras que pueden acompañar a estas inyecciones.
- Si el anuncio venía de tu propia red publicitaria, quita su script mientras lo hablas con el proveedor.
- Si Google ya te marcó como sitio engañoso, pide la revisión cuando esté limpio: cómo quitar el aviso de «Sitio engañoso».
Si es una tienda, hay datos de clientes o ya lo limpiaste una vez y ha vuelto, es el momento de pedir ayuda: nuestro servicio de limpieza incluye la erradicación de puertas traseras.
Preguntas frecuentes
¿Por qué no veo los anuncios en mi propio ordenador?
Porque el código puede elegir a quién se muestra: solo en móvil, solo a quien llega desde Google, solo en la primera visita, o nunca a quien parece el propietario (por ejemplo, con la sesión de administrador iniciada). Google recomienda revisar la web desde un equipo ajeno a su red por ese motivo.
¿Por qué solo aparecen en el móvil?
Porque hay inyecciones que filtran por navegador o dispositivo: Google explica que a menudo los atacantes se dirigen solo a agentes de usuario concretos para evitar ser detectados. Prueba desde un móvil con datos, no con tu wifi, y llegando desde un resultado de búsqueda.
¿Es suficiente restaurar una copia de seguridad?
Solo si la copia es anterior a la infección y, además, cierras la vía por la que entraron. Si restauras sin cerrarla, el atacante puede volver a entrar por el mismo sitio. Lo explicamos en ¿restaurar una copia de seguridad arregla una web hackeada?
¿Un plugin de seguridad lo arregla solo?
Puede ayudar a detectarlo, pero no sustituye a la revisión: si el código está en un servicio de terceros, en el .htaccess o fuera de WordPress, el plugin puede no verlo. Más en ¿sirven los plugins de seguridad para limpiar una web infectada?
¿Puede afectar un hackeo al SEO?
Sí. Si Google te marca como sitio engañoso, el aviso ahuyenta a las visitas, y si además se inyectaron páginas o enlaces, pueden acabar indexados. La recuperación va aparte: cómo recuperar el posicionamiento tras una web hackeada.
