Esta guía se creó específicamente para un tipo de hack que agrega páginas de galimatías con muchas palabras clave a tu sitio, al que nos referiremos como el hack de palabras clave y vínculos ocultos. Está diseñada para usuarios de sistemas de administración de contenido (CMS) populares, pero esta guía te resultará útil incluso si no usas un CMS.
Queremos asegurarnos de que esta guía te resulte realmente útil. Envía comentarios para ayudarnos a mejorar.
Identifica este tipo de hackeo
El hackeo de vínculos y palabras clave encubiertos crea automáticamente muchas páginas con imágenes, vínculos y texto sin sentido. A veces, estas páginas contienen elementos de plantilla básicos del sitio original, por lo que, a simple vista, es posible que se vean como partes normales de tu sitio hasta que se lee el contenido.
Las páginas hackeadas se crean para manipular los factores de clasificación de Google. Los hackers a menudo intentan monetizar esto vendiendo los vínculos de las páginas hackeadas a diferentes terceros. A menudo, las páginas hackeadas también redireccionan a los visitantes a una página no relacionada en la que los hackers pueden ganar dinero.
Comienza por verificar la herramienta Problemas de seguridad en Search Console para ver si Google descubrió alguna de estas páginas hackeadas en tu sitio. A veces, también puedes encontrar páginas como esta si abres una ventana de la Búsqueda de Google y escribes site:_your site url_
, con la URL de nivel raíz de tu sitio. Se mostrarán las páginas que Google indexó para tu sitio, incluidas las páginas hackeadas. Navega por un par de páginas de resultados de la búsqueda para ver si ves alguna URL inusual. Si no ves contenido hackeado en la Búsqueda de Google, usa los mismos términos de búsqueda con un motor de búsqueda diferente. Este es un ejemplo de cómo se vería:
Por lo general, cuando haces clic en un vínculo a una página hackeada, se te redirecciona a otro sitio o ves una página llena de contenido ilegible. Sin embargo, también es posible que veas un mensaje que sugiera que la página no existe (por ejemplo, un error 404). No te dejes engañar. Los hackers intentarán engañarte para que creas que la página desapareció o se corrigió cuando aún está hackeada. Para ello, ocultan el contenido. Para verificar si hay encubrimiento, ingresa las URLs de tu sitio en la Herramienta de inspección de URLs. La herramienta Explorar como Google te permite ver el contenido oculto subyacente.
Si ves estos problemas, es probable que tu sitio se haya visto afectado por este tipo de hackeo.
Cómo corregir el hack
Antes de comenzar, crea una copia sin conexión de los archivos antes de quitarlos, en caso de que necesites restablecerlos más adelante. Mejor aún, crea una copia de seguridad de todo el sitio antes de comenzar el proceso de limpieza. Para ello, guarda todos los archivos que se encuentran en tu servidor en una ubicación fuera de él o busca las mejores opciones de copia de seguridad para tu sistema de administración de contenido (CMS) en particular. Si usas un CMS, también crea una copia de seguridad de la base de datos.
Cómo verificar tu archivo .htaccess
(3 pasos)
El hackeo de vínculos y palabras clave encubiertos usa tu archivo .htaccess
para crear automáticamente páginas encubiertas en tu sitio. Familiarizarte con los conceptos básicos de .htaccess
en el sitio oficial de Apache puede ayudarte a comprender mejor cómo el hack afecta a tu sitio, pero no es obligatorio.
Paso 1
Busca el archivo .htaccess
en tu sitio. Si no sabes dónde encontrarlo y usas un CMS como WordPress, Joomla o Drupal, busca "ubicación del archivo .htaccess" en un motor de búsqueda junto con el nombre de tu CMS.
Según tu sitio, es posible que veas varios archivos .htaccess
.
Haz una lista de todas las ubicaciones de los archivos .htaccess
.
Paso 2
Abre el archivo .htaccess
para ver su contenido. Busca una línea de código que se vea como la siguiente:
RewriteRule (.*cj2fa.*|^tobeornottobe$) /injected_file.php?q=$1 [L]
Las variables de esta línea pueden cambiar. Tanto cj2fa
como tobeornottobe
pueden ser cualquier combinación de letras o palabras. Lo importante es identificar el .php
al que se hace referencia en esta línea.
Anota el archivo .php
que se menciona en el archivo .htaccess
. En el ejemplo, el archivo .php
se llama injected_file.php
, pero, en realidad, el nombre del archivo no será tan obvio. Por lo general, es un conjunto aleatorio de palabras inofensivas, como horsekeys.php
o potatolake.php
. Es probable que sea un archivo .php
malicioso que deberemos rastrear y quitar más adelante.
Paso 3
Reemplaza todos los archivos .htaccess
por una versión limpia o predeterminada del archivo .htaccess
. Por lo general, puedes encontrar una versión predeterminada de un archivo .htaccess
si buscas "archivo .htaccess
predeterminado" y el nombre de tu CMS. En el caso de los sitios con varios archivos .htaccess
, busca una versión limpia de cada uno y realiza el reemplazo.
Si no existe un .htaccess
predeterminado y nunca configuraste un archivo .htaccess
en tu sitio, es probable que el archivo .htaccess
que encuentres en tu sitio sea malicioso.
Guarda una copia de los archivos .htaccess
sin conexión por si acaso y desde tu sitio.
Busca y quita otros archivos maliciosos (5 pasos)
Identificar archivos maliciosos puede ser complicado y llevar mucho tiempo. Tómate tu tiempo cuando revises los archivos. Si aún no lo hiciste, este es un buen momento para crear una copia de seguridad de los archivos de tu sitio. Realiza una búsqueda en Google de "crear una copia de seguridad del sitio" y el nombre de tu CMS para encontrar instrucciones sobre cómo hacerlo.
Paso 1
Si usas un CMS, reinstala todos los archivos principales (predeterminados) que vienen en la distribución predeterminada de tu CMS, así como todo lo que hayas agregado (como temas, módulos y complementos). Esto ayuda a garantizar que estos archivos no contengan contenido hackeado. Puedes buscar "reinstalar" y el nombre de tu CMS en Google para encontrar instrucciones de reinstalación. Si tienes complementos, módulos, extensiones o temas, asegúrate de volver a instalarlos.
Paso 2
Comienza por buscar el archivo .php
que identificaste en el archivo .htaccess
antes. Según la forma en que accedas a los archivos de tu servidor, deberías tener algún tipo de funcionalidad de búsqueda. Busca el nombre del archivo malicioso. Si lo encuentras, primero crea una copia de seguridad y guárdala en otra ubicación en caso de que necesites restablecerla. Luego, bórrala de tu sitio.
Paso 3
Busca archivos maliciosos o comprometidos restantes. Es posible que ya hayas quitado todos los archivos maliciosos en los dos pasos anteriores, pero es mejor que sigas estos próximos pasos en caso de que haya más archivos comprometidos en tu sitio.
No te abrumes pensando que debes abrir y revisar cada archivo PHP. Comienza por crear una lista de archivos PHP sospechosos que quieras investigar. Estas son algunas formas de determinar qué archivos PHP son sospechosos:
- Si ya volviste a cargar los archivos del CMS, solo observa los archivos que no forman parte de los archivos o carpetas predeterminados del CMS. Esto debería descartar muchos archivos PHP y dejarte con algunos archivos para revisar.
- Ordena los archivos de tu sitio por la fecha en que se modificaron por última vez. Busca archivos que se hayan modificado dentro de unos meses desde la primera vez que descubriste que tu sitio fue hackeado.
- Ordena los archivos de tu sitio por tamaño. Busca archivos inusualmente grandes.
Paso 4
Una vez que tengas una lista de archivos PHP sospechosos, comprueba si son maliciosos. Si no estás familiarizado con PHP, este proceso podría llevar más tiempo, así que considera actualizar tu conocimiento con la documentación de PHP. Si es la primera vez que codificas, te recomendamos que busques ayuda. Mientras tanto, hay algunos patrones básicos que puedes buscar para identificar archivos maliciosos.
Si usas un CMS y no tienes el hábito de editar esos archivos directamente, compara los archivos de tu servidor con una lista de los archivos predeterminados empaquetados con el CMS y cualquier complemento y tema. Busca archivos que no pertenezcan, así como archivos que sean más grandes que su versión predeterminada.
Primero, analiza los archivos sospechosos que ya identificaste para buscar grandes bloques de texto con una combinación de letras y números aparentemente desordenados. Por lo general, el gran bloque de texto está precedido por una combinación de funciones de PHP, como base64_decode
, rot13
, eval
, strrev
o gzinflate
.
Este es un ejemplo de cómo podría verse ese bloque de código. A veces, todo este código se agrupa en una línea larga de texto, lo que hace que se vea más pequeño de lo que es.
// Hackers try to confuse webmasters by encoding malicious code into
// blocks of text. Be wary of unfamiliar code blocks like this.
base64_decode(strrev("hMXZpRXaslmYhJXZuxWd2BSZ0l2cgknbhByZul2czVmckRWYgknYgM3ajFGd0FGIlJXd0Vn
ZgknbhBSbvJnZgUGdpNHIyV3b5BSZyV3YlNHIvRHI0V2Zy9mZgQ3Ju9GRg4SZ0l2cgIXdvlHI4lmZg4WYjBSdvlHIsU2c
hVmcnBydvJGblBiZvBCdpJGIhBCZuFGIl1Wa0BCa0l2dgQXdCBiLkJXYoBSZiBibhNGIlR2bjBycphGdgcmbpRXYjNXdmJ2b
lRGI5xWZ0Fmb1RncvZmbVBiLn5WauVGcwFGagM3J0FGa3BCZuFGdzJXZk5Wdg8GdgU3b5BicvZGI0xWdjlmZmlGZgQXagU2ah
1GIvRHIzlGa0BSZrlGbgUGZvNGIlRWaoByb0BSZrlGbgMnclt2YhhEIuUGZvNGIlxmYhRWYlJnb1BychByZulGZhJXZ1F3ch
1GIlR2bjBCZlRXYjNXdmJ2bgMXdvl2YpxWYtBiZvBSZjVWawBSYgMXagMXaoRFIskGS"));
A veces, el código no está desordenado y parece una secuencia de comandos normal. Si no estás seguro de si el código es incorrecto, visita nuestros Foros de ayuda para webmasters, donde un grupo de webmasters experimentados puede ayudarte a revisar los archivos.
Paso 5
Ahora que sabes qué archivos son sospechosos, crea una copia de seguridad o una copia local. Para ello, guárdalos en tu computadora, en caso de que alguno de los archivos no sea malicioso, y borra los archivos sospechosos de tu sitio.
Verifica si tu sitio está limpio
Una vez que hayas terminado de quitar los archivos hackeados, verifica si tu arduo trabajo fue recompensado. ¿Recuerdas esas páginas ilegibles que identificaste antes? Vuelve a usar la herramienta Explorar como Google para ver si aún existen. Si la respuesta es "No se encontró" en Recuperar como Google, es probable que estés en muy buenas condiciones y puedas continuar con la corrección de las vulnerabilidades de tu sitio.
¿Cómo puedo evitar que me vuelvan a hackear?
Corregir las vulnerabilidades de tu sitio es un paso final esencial para solucionar el problema. Un estudio reciente reveló que el 20% de los sitios hackeados vuelven a serlo en un día. Es útil saber exactamente cómo se hackeó tu sitio. Lee nuestra guía sobre los principales métodos que usan los generadores de spam para hackear sitios web para comenzar tu investigación. Sin embargo, si no puedes averiguar cómo se hackeó tu sitio, la siguiente es una lista de tareas que puedes hacer para reducir las vulnerabilidades en tu sitio:
- Realiza análisis de forma periódica: Usa cualquier escáner de virus popular para detectar vulnerabilidades o virus.
- Cambia las contraseñas con frecuencia: Cambiar periódicamente las contraseñas de todas las cuentas de tu sitio web, como el proveedor de hosting, el FTP y el CMS, puede evitar el acceso no autorizado a tu sitio. Es importante crear una contraseña segura y única para cada cuenta.
- Usa la autenticación de dos factores (2FA): Considera habilitar la 2FA en cualquier servicio que requiera que accedas. La 2FA dificulta que los hackers accedan, incluso si roban tu contraseña.
- Actualiza el CMS, los complementos, las extensiones y los módulos con regularidad: Esperamos que ya hayas realizado este paso. Muchos sitios se hackean porque ejecutan software desactualizado. Algunos CMS admiten la actualización automática.
- Considera suscribirte a un servicio de seguridad para supervisar tu sitio: Existen muchos servicios excelentes que pueden ayudarte a supervisar tu sitio por una pequeña tarifa. Considera registrarte con ellos para mantener tu sitio seguro.
Recursos adicionales
Si aún tienes problemas para corregir tu sitio, hay algunos recursos más que podrían ayudarte.
Estas herramientas analizan tu sitio y pueden encontrar contenido problemático. Aparte de VirusTotal, Google no los ejecuta ni los admite.
Estas son solo algunas herramientas que pueden analizar tu sitio en busca de contenido problemático. Ten en cuenta que estos escáneres no pueden garantizar que identificarán todos los tipos de contenido problemático.
Estos son algunos recursos adicionales de Google que pueden ayudarte: