Domain hijacking
Un buen posicionamiento en los buscadores tiene un papel capital en el éxito de un proyecto web, puesto que, si una página aparece en las primeras posiciones en la lista de resultados es muy probable que los internautas dirijan sus pasos hacia ella. No en vano, la optimización para los buscadores o SEO se cuenta, desde hace años, entre las disciplinas más relevantes del desarrollo web. Esta consiste, por un lado, en encontrar e integrar las palabras clave más adecuadas para el proyecto y, por el otro, en ajustar de forma óptima la estructura de la página a los principios de evaluación de los buscadores. Y eso sin olvidar otro de los objetivos, que consiste en aumentar la popularidad de links (link popularity) generando enlaces entrantes desde otras páginas, los denominados backlinks.
Si se cuenta con una estructura básica optimizada lo normal es esperar un aumento del tráfico, algo muy probable cuando el concepto global de la página es coherente. Si, a pesar de las medidas de optimización adoptadas no se observa ningún crecimiento o, incluso, se pierde tráfico, esto podría deberse a la falta de efecto de estas medidas, pero también podría sospecharse que se ha sido víctima del denominado domain hijacking (secuestro de dominios), que elimina la página del índice del buscador, ocultándola a todas las visitas potenciales.
El secuestro de dominios (domain hijacking en inglés) define el procedimiento por el cual un URL se sustituye por uno falso en el índice del motor de búsqueda. Este nuevo dominio, si bien lleva a la página auténtica, no lo hace directamente, sino utilizando una redirección. Dado que este dominio se apropia del posicionamiento de la página original, el secuestro de dominios puede llevar a un robo masivo de visitas.
¿Qué es el domain hijacking?
Por secuestro de dominios se entiende una forma de cibercriminalidad que hace desaparecer una página de la lista de resultados y la sustituye por otra. Esta segunda página enlaza a la página verdadera, pero no por un enlace directo con la etiqueta <a> de HTML, sino mediante una redirección. En este ejemplo se enlaza a tu-pagina.es desde pagina-que-enlaza.es con un redirect:
www.pagina-que-enlaza.es/redirect.php?target=www.tu-pagina.es
Cuando el buscador topa con un enlace de este tipo, interpreta que ambas páginas son idénticas, lo que tiene como consecuencia que borra a una de ellas del índice, como si se tratara de un duplicado.
Para llevar a cabo esta acción, el buscador se orienta por los códigos de estado HTTP propios de las redirecciones. El código 301 indica una redirección permanente (Moved permanently) al dominio indicado, el código 302 se utiliza para señalar una redirección temporal (Found) y, mientras el primero no resulta problemático, con el segundo la situación es diferente, convirtiéndose en el principal motivo de que el hijacking sea posible. Este tipo de redirección temporal, que no trae consigo ninguna comprobación de la relación entre ambas páginas, sugiere al crawler del buscador que la página a donde se enlaza solo existe durante un plazo de tiempo limitado y que la enlazada es la verdadera, de modo que la web falsa entra a formar parte del índice del buscador, recibiendo así el posicionamiento de la verdadera.
Redirect 301 y 302: cuándo y por qué se utilizan
La redirección de dominios se lleva a cabo por diferentes motivos. Una práctica muy extendida consiste en utilizar el código 301 para desviar de forma permanente los dominios con errores tipográficos al correcto, de forma que si se teclea en la barra de búsqueda del navegador googel.es en lugar de google.es se abre la página principal del buscador. También es habitual reenviar a la dirección correcta de la página principal: al abrir la página principal de Wikipedia en español en es.wikipedia.org, un desvío del tipo 301 conduce al URL https://es.wikipedia.org/wiki/Wikipedia:Portada. Los administradores también utilizan las redirecciones permanentes cuando, tras un cambio de dominio, se pretende dirigir a las visitas al dominio nuevo o marcar de forma correcta a los contenidos de páginas con una nueva dirección web.
Por el contrario, las redirecciones del tipo 302 tienen la función primordial de presentar contenido en un dominio diferente de forma temporalmente limitada, por ejemplo, en caso de llevar a cabo labores de mantenimiento. Cuando un webmaster genera este desvío manual, por lo general lo hace con la intención de que el contenido vuelva a aparecer en la página original en algún momento. No obstante, se dan tres escenarios de redirección temporal que pueden conducir al secuestro de dominios o que incluso lo tienen como objetivo:
- Uso involuntario de la redirección 302: es posible que haya administradores que enlacen a un proyecto externo mediante un desvío temporal sin que haya una mala intención detrás. Podría tratarse de un error, porque en su lugar tendría que haberse codificado una redirección permanente. El módulo de reescritura de URL del servidor Apache, mod_rewrite, también crea desvíos 302 por defecto.
- URL generados de forma dinámica: PHP es clave en el desarrollo web. Los códigos del lado del servidor escritos con este popular lenguaje de programación son una forma sencilla y práctica de crear contenidos dinámicos para la web, pero también hay scripts de PHP que enlazan direcciones de forma dinámica en un URL, utilizando para ello el código de estado 302. Este tipo de scripts se utiliza, sobre todo, en directorios para direcciones web pero también en muchos sistemas de gestión de contenidos.
- Hijacking con intenciones delictivas: aquellas personas malintencionadas, conocidas como hijackers, también están familiarizadas con el código de reenvío temporal y hacen buen uso de él para impulsar la indexación de sus propios contenidos, "secuestrando" para ello aquellas páginas mejor posicionadas. Esta actuación, ni sostenible a largo plazo ni, de hecho, legal, se cuenta entre las impopulares técnicas del denominado black hat SEO.
Cómo puedes proteger a tu proyecto del hijacking de dominios
Cuando se trabaja en la mejora del posicionamiento de una página, pronto se percibe lo exigente de esta labor. Cuanto más alto escala una web en la cima del buscador, mayor es la probabilidad de que esté en la mira de algún hijacker. A diferencia de lo que ocurre, por ejemplo, en un ataque determinado por una vulnerabilidad en el proyecto, el funcionamiento del hijacking está ligado de forma estrecha a una disciplina elemental de SEO como es el link building y, por ello, muy difícil de impedir con un software de seguridad. En consecuencia, es necesario analizar regularmente los enlaces entrantes, tanto aquellos nuevos como aquellos ya existentes, para filtrar dominios conflictivos.
Para ello, existe un gran número de herramientas y servicios online como SEMrush, LinkResearchTools, SISTRIX o Google Search Console. Esta última contiene una herramienta para eliminar URL, que permite borrar del índice de búsqueda redirecciones a un proyecto web que no deberían estar ahí. Antes de hacerlo es recomendable contactar con el administrador correspondiente para que ajuste la redirección, de tal forma que no se pierdan los enlaces. A este propósito, el código de estado 307 (Temporary Redirect), disponible desde HTTP 1.1, permite llevar a cabo desvíos temporales sin riesgo de hijacking.
Cuando la página original ya ha sido eliminada del índice, lo indicado sería entonces, contactar con el proveedor del buscador una vez eliminado el enlace dañino y solicitar una recuperación del ranking previo.