Sitio marcado como peligroso por Google: cómo limpiarlo

· 6 min de lectura · por el equipo técnico de VPS Argentina

Si Chrome o los resultados de Google avisan que tu sitio es peligroso, casi siempre alguien le metió código malicioso aprovechando un plugin desactualizado o una clave robada. Confirmalo en Search Console, en el informe Problemas de seguridad, que muestra el tipo de problema y páginas de ejemplo. Guardá una copia del sitio tal como está, restaurá un respaldo limpio o limpialo, actualizá el CMS y sus plugins y cambiá todas las claves. Recién ahí pedí la revisión desde el mismo informe: tarda de unos días a unas semanas.

Confirmá qué encontró Google

Entrá a Search Console y abrí Seguridad y acciones manuales › Problemas de seguridad. Ahí figura el tipo de problema, como software malicioso, código o contenido inyectado o páginas engañosas, y direcciones de ejemplo donde Google lo encontró. Son tu punto de partida.

Si tu sitio todavía no está en Search Console, agregalo y verificalo, con un registro TXT en la zona DNS o con un archivo que se sube a la carpeta pública. Sin eso no vas a poder pedir la revisión.

Para una consulta rápida y sin cuenta está el estado de Navegación segura, en el Informe de transparencia de Google (transparencyreport.google.com/safe-browsing/search). Chrome, Firefox y Safari usan esa misma lista: por eso el aviso aparece en todos.

Qué suele haber detrás

La puerta de entrada suele ser el sitio y no el servidor. Estos son los hallazgos más comunes y dónde buscarlos.

QuéDónde mirarPor qué importa
Código inyectadoLos archivos .php y .js del sitio, y el contenido de la base de datos.Un script o un iframe que carga cosas de otro dominio o desvía al visitante.
Plugins o temas desactualizadosLa lista de plugins y temas del CMS, también los desactivados.Sus fallas conocidas se atacan en forma automática. Uno desactivado sigue en el servidor y se puede atacar igual.
Plugins o temas de origen dudosoTodo lo que no bajaste del repositorio oficial ni del sitio del autor.Las copias pirateadas de plugins pagos ("nulled") suelen traer una puerta trasera.
Administradores desconocidosLos usuarios del CMS con rol de administrador.Son la forma de volver a entrar después de que limpiás.
Redirecciones en el .htaccessEl .htaccess de la carpeta pública y el de cada subcarpeta.Suelen desviar solo a quien llega desde Google o desde el celular. Por eso vos no las ves.
PHP donde no vaLa carpeta de subidas (en WordPress, wp-content/uploads).Ahí solo debería haber imágenes y documentos.

Buscá el código malicioso

Empezá por las páginas de ejemplo del informe. Si tenés acceso por consola, estos comandos acotan la búsqueda en un hosting con DirectAdmin; cambiá tudominio.com.ar por tu dominio. Las dos últimas líneas son de WP-CLI: sirven si tu sitio es WordPress y lo tenés instalado.

cd ~/domains/tudominio.com.ar/public_html
find . -name "*.php" -mtime -15
find wp-content/uploads -name "*.php"
grep -rlF "eval(base64_decode" .
wp core verify-checksums
wp user list --role=administrator
  • El primer find lista los PHP modificados en los últimos 15 días. Ajustá el número según cuándo empezó el problema.
  • El segundo busca PHP en la carpeta de subidas de WordPress, donde no debería haber ninguno.
  • grep busca una forma típica de esconder código. Una coincidencia es una pista y no una condena: algunos plugins legítimos la usan.
  • wp core verify-checksums compara los archivos de WordPress con los originales, y wp user list muestra los administradores.

Limpiá o restaurá un respaldo sano

  1. Si tenés un respaldo de antes del ataque, restaurarlo suele ser lo más rápido. Elegí uno anterior a los primeros archivos modificados, no el último, que puede estar infectado.
  2. Si no tenés uno limpio, reemplazá los archivos del CMS por una copia bajada del sitio oficial y reinstalá plugins y temas desde su origen. A mano quedan solo tus archivos: la configuración, las subidas y el tema propio, si lo tenés.
  3. Revisá también la base de datos: el código inyectado puede estar en entradas, opciones o widgets, no solo en archivos.
  4. Borrá los plugins y temas que no usás. Desactivarlos no alcanza.
  5. Actualizá el CMS, los plugins y los temas. Si restauraste un respaldo, hacelo enseguida: tiene la misma falla por la que entraron.
  6. Borrá los administradores que no reconozcas y las reglas del .htaccess que no pusiste.

Cambiá todas las claves

Si entraron con una clave, limpiar no alcanza: van a volver con la misma. Cambialas desde una computadora que sepas limpia, porque hay programas que roban las claves guardadas en el navegador y en el cliente de FTP.

  • Panel de control: la clave de DirectAdmin.
  • FTP y SFTP: todas las cuentas, no solo la principal. Conectate siempre con cifrado, por SFTP o por FTP con TLS.
  • Base de datos: cambiá la clave del usuario en DirectAdmin y actualizala en la configuración del sitio (en WordPress, DB_PASSWORD en wp-config.php). Si no, el sitio deja de conectarse a la base.
  • Administradores del CMS: todos. En WordPress, cambiar las claves secretas de wp-config.php cierra todas las sesiones abiertas, también la del intruso.

Pedí la revisión en Search Console

Pedila recién cuando no quede nada en ninguna página. Si Google vuelve a encontrar el problema, la próxima revisión tarda más y el sitio puede quedar marcado como reincidente. Cada revisión lleva de unos días a unas semanas.

  1. Volvé a Seguridad y acciones manuales › Problemas de seguridad y tocá Solicitar revisión.
  2. Contá en pocas líneas qué encontraste, qué hiciste y qué cambiaste para que no se repita: qué plugin estaba desactualizado, qué borraste y qué claves cambiaste.
  3. La respuesta llega por correo y queda en el mismo informe. Si la rechazan, revisá otra vez las páginas de ejemplo antes de volver a pedirla.

Preguntas frecuentes

¿Por qué yo no veo nada raro en mi sitio?

Porque el código malicioso suele esconderse: aparece solo para quien llega desde Google, desde un celular o por primera vez, y no para quien entra como administrador. Para ver lo que ve Google, usá la inspección de URLs de Search Console con la prueba en vivo: muestra el HTML de la página tal como lo recibe.

¿Cuánto tarda en irse el aviso?

La revisión de Google lleva de unos días a unas semanas. Cuando la aprueban, el aviso deja de aparecer en los resultados de búsqueda, y los navegadores lo quitan a medida que actualizan su lista.

¿Y si el aviso lo da un antivirus y no Google?

Cada fabricante de antivirus tiene su propia lista y su propio formulario para pedir que revisen un sitio. Limpialo igual, con los mismos pasos, y después pedí la revisión en el sitio de ese fabricante.

¿El problema puede estar en el servidor?

Puede pasar, pero es lo menos común: casi siempre la puerta de entrada es el sitio, por un plugin o un tema desactualizado o por una clave robada. Si limpiaste, actualizaste y cambiaste las claves y el código vuelve a aparecer, escribinos por ticket con las direcciones afectadas y lo que encontraste.

Seguí leyendo