Secuestro de clics
El clickjacking es una técnica informática fraudulenta . Durante la navegación web normal , el usuario hace clic con el puntero del mouse sobre un objeto (por ejemplo, un enlace ), pero en realidad su clic se redirige, sin su conocimiento, a otro objeto, lo que puede tener consecuencias más diversas: desde simplemente enviar spam , para descargar un archivo, para ordenar productos de sitios de comercio electrónico .
Además del secuestro de clics, se pueden interceptar las pulsaciones de teclas, por ejemplo, al introducir el correo electrónico o la contraseña de la cuenta bancaria. Ambas posibilidades (abducción de clics o pulsaciones de teclas en el teclado) se realizan sin el conocimiento del usuario.
Operación
Hay dos técnicas para hacer clickjacking:
La primera es posible gracias a una característica aparentemente inofensiva de HTML , con la que las páginas web pueden utilizarse para realizar acciones inesperadas. Está basado en JavaScript , de hecho en el momento del clic del usuario hay un controlador de eventos que ejecuta una determinada acción, los atacantes solo pasan lo que necesitan como parámetros.
Sin embargo, también existe otra técnica, llamada IFrame (Inner Frame), que consiste en crear una página transparente y colocarla encima de la página real. De esta forma el usuario cree que está consultando una página normal con sus correspondientes botones, cuando en realidad está navegando por la página invisible.
Un usuario cae en la trampa del secuestro de clics generalmente al hacer clic en un enlace. El usuario es incapaz de reconocer la diferencia entre una página saludable y una página engañosa, por lo que puede caer en la trampa sin conocer sus acciones. De hecho, al combinar hojas de estilo , páginas transparentes y cuadros de texto, se puede hacer creer a los usuarios que están ingresando información de forma normal (por ejemplo, contraseñas), cuando en cambio son interceptados por atacantes.
Ejemplos
Las aplicaciones de esta técnica son de lo más variadas, pueden ser "inofensivas" o incluso más peligrosas para el usuario que cae en ella; los conocidos por ahora son los siguientes:
- Llevar al usuario a comprar un producto en Amazon ; para este uso, sin embargo, el atacante solo tiene un clic disponible, por lo que confía en que el usuario ya ha iniciado sesión y que ha activado el pedido con 1 clic (la posibilidad de ordenar con un clic)
- Active el micrófono y la cámara web del usuario a través de Adobe Flash (esta situación debería haberse solucionado)
- Descargar y ejecutar malware en la computadora del usuario
- Seguir a alguien en Twitter
- Compartir enlaces en Facebook
- Poner páginas de "me gusta" o enlaces en Facebook (esta técnica se denominó LikeJacking)
- Dirigir al usuario a sitios que brindan publicidad y así ganar dinero para el atacante.
- Reproduce videos de YouTube para ganar vistas
Prevención
Existen soluciones para tratar de limitar este problema, pueden ser tanto del lado del cliente como del servidor, o respectivamente, pueden ser creadas por el usuario en su navegador y por el propietario del sitio.
Lado del cliente
Estas son las soluciones que el usuario puede adoptar:
NoScript
La protección contra el secuestro de clics se puede obtener, con un buen grado de seguridad (como se informa en el "Manual de seguridad del navegador" de 2008), instalando NoScript en Mozilla Firefox . Es un producto de ClearClick, lanzado el 8 de octubre de 2008, que ayuda a los usuarios al evitar que hagan clic en páginas transparentes.
GuardedID
Este producto incluye protección contra el secuestro de clics en Internet Explorer y Firefox al obligar a que las páginas transparentes se vuelvan visibles. De esta manera el usuario puede tener una vista completa de la página y evitar presionar botones equivocados.
Gacelas
Gazelles es un producto de Microsoft Research para IE, que utiliza una técnica similar al modelo de seguridad utilizado para los sistemas operativos.
Una página con una fuente diferente a la correcta solo puede mostrar su contenido dinámico si es opaco.
Lado del servidor
Estas son las soluciones que el propietario del sitio puede adoptar:
Asesino de marcos
Los propietarios de sitios pueden insertar un framekiller de JavaScript en las páginas donde no quieren que se inserten páginas de fuentes no relacionadas. Al ser una protección basada en JavaScript, no siempre es confiable. Por ejemplo, en Internet Explorer, esta solución se puede eludir insertando la página de destino dentro de un elemento del tipo:
< SEGURIDAD DE IFRAME = restringido >
Opciones de X-Frame
Este es un marco introducido en 2009 en Internet Explorer. Funciona insertando X-Frame-Options en el encabezado HTTP , lo que ofrece una protección parcial contra el secuestro de clics, más tarde esta solución también fue adoptada por otros navegadores.
El encabezado establece la configuración de los marcos, fijando cuáles son las fuentes desde las que pueden llegar las páginas externas. Esto evita que el sitio sea atacado insertando marcos de fuentes no permitidas por el encabezado.
Esta solución, X-Frame-Options, se publicó oficialmente como RFC 7034 en 2013 , pero no se convirtió en un estándar.
Política de seguridad de contenido
Esta solución hace que X-Frame-Options quede obsoleto y sea la preferida por los navegadores. Explota la directiva frame-ancestor de la 'Política de seguridad de contenido' con la que puede habilitar o deshabilitar el código incrustado de ciertas páginas hostiles.
Artículos relacionados
Fuentes
- Alessandro Bottoni, Clickjacking, todos los navegadores vulnerables , Punto-Informatico.it, 29-09-2008 (consultado el 28-10-2017)
- (ES) OWASP, Clickjacking , owasp.org, 25-02-2017 (consultado el 28-10-2017)
- (ES) Margaret Rouse, Clickjacking , whatis.techtarget.com, septiembre de 2015 (consultado el 30-10-2017)
- (ES) Caleb Queern, ¿Qué es el clickjacking y cómo se puede prevenir? , lookingglasscyber.com (consultado el 30-10-2017)
- hackerstribe.com, ClickJacking Attack: What you need to know , hackerstribe.com, 3-12-2011 (consultado el 30-10-2017)