stringtranslate.com

secuestro de clics

En un ataque de clickjacking, al usuario se le presenta una interfaz falsa, donde su entrada se aplica a algo que no puede ver.

Clickjacking (clasificado como ataque de reparación de la interfaz de usuario o reparación de la interfaz de usuario ) es una técnica maliciosa que engaña a un usuario para que haga clic en algo diferente de lo que percibe, revelando así potencialmente información confidencial o permitiendo que otros tomen el control de su computadora mientras hacen clic en algo aparentemente Objetos inocuos, incluidas páginas web . [1] [2] [3] [4] [5]

El clickjacking es un ejemplo del problema del diputado confuso , en el que se engaña a una computadora para que haga un mal uso de su autoridad. [6]

Historia

En 2002, se observó que era posible cargar una capa transparente sobre una página web y hacer que la entrada del usuario afectara la capa transparente sin que el usuario se diera cuenta. Sin embargo, esto fue ignorado principalmente como un problema importante hasta 2008. [7]

En 2008, Jeremiah Grossman y Robert Hansen (de SecTheory) descubrieron que se podía hacer clic en Adobe Flash Player , lo que permitía a un atacante obtener acceso a la computadora de un usuario sin su conocimiento. [7] Grossman y Hansen acuñaron el término "clickjacking", [8] [9] un acrónimo de las palabras "click" y "hijacking". [7]

A medida que se descubrieron más ataques de naturaleza similar, se cambió el enfoque del término "reparación de UI" para describir la categoría de estos ataques, en lugar de simplemente el clickjacking en sí. [7]

Descripción

Una forma de clickjacking aprovecha las vulnerabilidades presentes en aplicaciones o páginas web para permitir al atacante manipular la computadora del usuario para su propio beneficio.

Por ejemplo, una página con clics engaña al usuario para que realice acciones no deseadas haciendo clic en enlaces ocultos. En una página con clickjack, los atacantes cargan otra página sobre la página original en una capa transparente para engañar al usuario para que realice acciones, cuyos resultados no serán los mismos que espera. Los usuarios desprevenidos piensan que están haciendo clic en botones visibles, cuando en realidad están realizando acciones en la página invisible, haciendo clic en los botones de la página debajo de la capa. La página oculta puede ser una página de autenticación; por lo tanto, los atacantes pueden engañar a los usuarios para que realicen acciones que nunca pretendieron. No hay forma de rastrear tales acciones hasta los atacantes más adelante, ya que los usuarios habrían sido autenticados genuinamente en la página oculta.

Categorías de clickjacking

Clásico

El clickjacking clásico se refiere a una situación en la que un atacante utiliza capas ocultas en páginas web para manipular las acciones que realiza el cursor de un usuario, lo que induce a error al usuario sobre en qué realmente se hace clic. [17]

Un usuario puede recibir un correo electrónico con un enlace a un vídeo sobre una noticia, pero otra página web, por ejemplo la página de un producto en Amazon , puede estar "oculta" encima o debajo del botón "REPRODUCIR" del vídeo de noticias. El usuario intenta "reproducir" el vídeo pero en realidad "compra" el producto en Amazon. El pirata informático solo puede enviar un solo clic, por lo que confía en el hecho de que el visitante ha iniciado sesión en Amazon y tiene habilitado el pedido con 1 clic.

Si bien la implementación técnica de estos ataques puede ser un desafío debido a las incompatibilidades entre navegadores, varias herramientas como BeEF o Metasploit Project ofrecen una explotación casi totalmente automatizada de clientes en sitios web vulnerables. El clickjacking puede verse facilitado por (o puede facilitar) otros ataques web, como XSS . [18] [19]

como secuestro

Likejacking es una técnica maliciosa para engañar a los usuarios que ven un sitio web para que " les guste " una página de Facebook u otras publicaciones/cuentas de redes sociales que no tenían la intención de darles "me gusta" intencionalmente. [20] El término "likejacking" proviene de un comentario publicado por Corey Ballou en el artículo Cómo dar "Me gusta" a cualquier cosa en la Web (de forma segura) , [21] que es una de las primeras publicaciones documentadas que explica la posibilidad de actividad maliciosa con respecto a El botón "me gusta" de Facebook. [22]

Según un artículo de IEEE Spectrum , en uno de los hackathons de Facebook se desarrolló una solución para el likejacking . [23] Hay disponible un marcador "Me gusta" que evita la posibilidad de secuestro de me gusta presente en el botón Me gusta de Facebook . [24]

Anidado

El clickjacking anidado, en comparación con el clickjacking clásico, funciona incrustando un marco web malicioso entre dos marcos de la página web original e inofensiva : el de la página enmarcada y el que se muestra en la ventana superior. Esto funciona debido a una vulnerabilidad en el encabezado HTTP X-Frame-Options, en la que, cuando este elemento tiene el valor SAMEORIGIN, el navegador web solo comprueba las dos capas antes mencionadas. El hecho de que se puedan agregar cuadros adicionales entre estos dos sin ser detectados significa que los atacantes pueden usarlo para su beneficio.

En el pasado, con Google+ y la versión defectuosa de X-Frame-Options, los atacantes podían insertar marcos de su elección aprovechando la vulnerabilidad presente en el motor de búsqueda de imágenes de Google . Entre los marcos de visualización de imágenes, que también estaban presentes en Google+, estos marcos controlados por el atacante podían cargarse y no restringirse, lo que permitía a los atacantes engañar a quien llegaba a la página de visualización de imágenes. [12]

Secuestro de cursor

CursorJacking es una técnica de reparación de la interfaz de usuario para cambiar el cursor desde la ubicación que percibe el usuario, descubierta en 2010 por Eddy Bordi, investigador devulnerability.fr. [25] Marcus Niemietz demostró esto con un ícono de cursor personalizado, y en 2012 Mario Heiderich lo hizo ocultando el cursor. [26]

Jordi Chancel, investigador de Alternativ-Testing.fr, descubrió una vulnerabilidad CursorJacking usando código Flash, HTML y JavaScript en Mozilla Firefox en sistemas Mac OS X (corregido en Firefox 30.0) que puede conducir a la ejecución de código arbitrario y al espionaje de la cámara web. [27]

Jordi Chancel volvió a descubrir una segunda vulnerabilidad de CursorJacking en Mozilla Firefox en sistemas Mac OS X (corregida en Firefox 37.0) utilizando una vez más código Flash, HTML y JavaScript que también puede conducir al espionaje a través de una cámara web y a la ejecución de un complemento malicioso. permitiendo la ejecución de malware en el ordenador del usuario afectado. [28]

ratónjack

A diferencia de otras técnicas de clickjacking que reparan una interfaz de usuario, MouseJack es una vulnerabilidad de interfaz de usuario inalámbrica basada en hardware reportada por primera vez por Marc Newlin de Bastille.net en 2016, que permite inyectar entradas de teclados externos en dispositivos vulnerables. [29] Logitech proporcionó parches de firmware, pero otros fabricantes no respondieron a esta vulnerabilidad. [30]

Sin navegador

En el clickjacking sin navegador, los atacantes utilizan vulnerabilidades en los programas para replicar el clickjacking clásico en ellos, sin necesidad de utilizar la presencia de un navegador web.

Este método de clickjacking prevalece principalmente entre dispositivos móviles, generalmente en dispositivos Android , especialmente debido a la forma en que funcionan las notificaciones del sistema . Debido a que las notificaciones del sistema tienen un pequeño retraso entre el momento en que se solicita la notificación y el momento en que la notificación realmente se muestra en la pantalla, los atacantes son capaces de usar ese espacio para crear un botón ficticio que se encuentra oculto debajo de la notificación y en el que aún se puede hacer clic. . [7]

galletajacking

CookieJacking es una forma de clickjacking en la que se roban cookies de los navegadores web de la víctima . Esto se hace engañando al usuario para que arrastre un objeto que aparentemente parece inofensivo, pero que en realidad hace que el usuario seleccione todo el contenido de la cookie a la que se dirige. Desde allí, el atacante puede adquirir la cookie y todos los datos que posee. [14] [ se necesita aclaración ]

Secuestro de archivos

En fileJacking, los atacantes utilizan la capacidad del navegador web para navegar a través de la computadora y acceder a archivos informáticos para adquirir datos personales. Lo hace engañando al usuario para que establezca un servidor de archivos activo (a través de la ventana de selección de archivos y carpetas que utilizan los navegadores). Con esto, los atacantes ahora pueden acceder y tomar archivos de las computadoras de sus víctimas. [15]

Ataque al administrador de contraseñas

Un artículo de 2014 de un investigador de la Universidad Carnegie Mellon encontró que, si bien los navegadores se niegan a completar automáticamente si el protocolo en la página de inicio de sesión actual es diferente del protocolo en el momento en que se guardó la contraseña, algunos administradores de contraseñas completarían de manera insegura las contraseñas para la versión http. de contraseñas guardadas en https. La mayoría de los administradores no protegieron contra ataques basados ​​en iFrame y redirección y expusieron contraseñas adicionales cuando se había utilizado la sincronización de contraseñas entre múltiples dispositivos. [dieciséis]

Prevención

Lado del cliente

Sin guión

Se puede agregar protección contra el clickjacking (incluido el likejacking) a las versiones de escritorio y móvil de Mozilla Firefox [31] instalando el complemento NoScript : su función ClearClick, lanzada el 8 de octubre de 2008, evita que los usuarios hagan clic en elementos de página invisibles o "reparados". de documentos incrustados o applets. [32] Según el "Manual de seguridad del navegador" de Google de 2008, ClearClick de NoScript es un "producto disponible gratuitamente que ofrece un grado razonable de protección" contra el Clickjacking. [33] Se agregó protección contra el nuevo ataque de secuestro de cursor a NoScript 2.2.8 RC1. [26]

NoClickjack

El complemento del navegador web "NoClickjack" ( extensión del navegador ) agrega protección contra clickjack del lado del cliente para usuarios de Google Chrome , Mozilla Firefox , Opera y Microsoft Edge sin interferir con el funcionamiento de iFrames legítimos. NoClickjack se basa en tecnología desarrollada para GuardedID. El complemento NoClickjack es gratuito.

ID protegido

GuardedID (un producto comercial) incluye protección contra clickjack del lado del cliente para usuarios de Internet Explorer sin interferir con el funcionamiento de iFrames legítimos. [34] La protección contra clickjack GuardedID obliga a que todos los fotogramas se vuelvan visibles. GuardedID se une [ se necesita aclaración ] con el complemento NoClickjack para agregar protección para Google Chrome , Mozilla Firefox , Opera y Microsoft Edge .

Gacela

Gazelle es un navegador web seguro del proyecto de investigación de Microsoft basado en IE, que utiliza un modelo de seguridad similar al sistema operativo y tiene sus propias defensas limitadas contra el clickjacking. [35] En Gazelle, una ventana de origen diferente sólo puede dibujar contenido dinámico sobre el espacio de pantalla de otra ventana si el contenido que dibuja es opaco.

Observador de intersección v2

La API Intersection Observer v2 [36] introduce el concepto de rastrear la "visibilidad" real de un elemento objetivo como lo definiría un ser humano. [37] Esto permite que un widget enmarcado detecte cuando está siendo cubierto. La función está habilitada de forma predeterminada desde Google Chrome 74, lanzado en abril de 2019. [38] La API también se implementa en otros navegadores basados ​​en Chromium , como Microsoft Edge y Opera.

Lado del servidor

asesino de marcos

Los propietarios de sitios web pueden proteger a sus usuarios contra la reparación de la interfaz de usuario (clickjacking basado en marcos) en el lado del servidor al incluir un fragmento de JavaScript framekiller en aquellas páginas que no desean que se incluyan dentro de marcos de diferentes fuentes. [33]

Esta protección basada en JavaScript no siempre es fiable. Esto es especialmente cierto en Internet Explorer, [33] donde este tipo de contramedida se puede eludir "por diseño" al incluir la página de destino dentro de un elemento. [39]<IFRAME SECURITY=restricted>

Opciones de X-Frame

En 2009 se introdujo en Internet Explorer 8 un nuevo encabezado HTTP X-Frame-Optionsque ofrecía una protección parcial contra el clickjacking [40] [41] y fue adoptado por otros navegadores ( Safari , [42] Firefox , [43] Chrome , [44] y Opera [ 45] ) poco después. El encabezado, cuando lo establece el propietario del sitio web, declara su política de encuadre preferida: valores de DENY, , o evitarán cualquier encuadre, encuadre por sitios externos o permitirán encuadre solo por el sitio especificado, respectivamente. Además de eso, algunos sitios de publicidad devuelven un valor no estándar con la intención de permitir enmarcar su contenido en cualquier página (equivalente a no configurar X-Frame-Options en absoluto).ALLOW-FROM originSAMEORIGINALLOWALL

En 2013, el encabezado X-Frame-Options se publicó oficialmente como RFC 7034, [46] pero no es un estándar de Internet. El documento se proporciona únicamente con fines informativos. La recomendación de nivel 2 de la política de seguridad de contenido del W3C proporciona una directiva de seguridad alternativa, frame-ancestors, cuyo objetivo es dejar obsoleto el encabezado X-Frame-Options. [47]

Un encabezado de seguridad como X-Frame-Options no protegerá a los usuarios contra ataques de clickjacking que no utilicen un marco. [48]

Política de seguridad de contenido

La frame-ancestorsdirectiva de Política de seguridad de contenido (introducida en la versión 1.1) puede permitir o no permitir la incrustación de contenido por páginas potencialmente hostiles utilizando iframe, objetos, etc. Esta directiva deja obsoleta la directiva X-Frame-Options. Si una página se presenta con ambos encabezados, el navegador debería preferir la política de ancestros del marco. [49] , aunque algunos navegadores populares desobedecen este requisito. [50]

Ejemplos de políticas de marco-ancestros:

# No permitir la incrustación. Todos los iframes, etc. estarán en blanco o contendrán una página de error específica del navegador.Política de seguridad de contenido: ancestros del marco 'ninguno'
# Permitir la incrustación únicamente de contenido propio .Política de seguridad de contenido: ancestros del marco 'yo'
# Permitir que orígenes específicos incrusten este contenidoPolítica-de-seguridad-de-contenido: frame-ancestors www.example.com www.wikipedia.org

Ver también

Referencias

  1. ^ Robert McMillan (17 de septiembre de 2008). "A petición de Adobe, los piratas informáticos rechazan la charla sobre 'clickjacking'". Mundo PC. Archivado desde el original el 17 de julio de 2015 . Consultado el 8 de octubre de 2008 .
  2. ^ Megha Dhawan (29 de septiembre de 2008). "Cuidado, clickjackers al acecho". Los tiempos de la India . Archivado desde el original el 24 de julio de 2009 . Consultado el 8 de octubre de 2008 .
  3. ^ Dan Goodin (7 de octubre de 2008). "El juego en red convierte a la PC en un zombi de vigilancia encubierto". El registro . Consultado el 8 de octubre de 2008 .
  4. ^ Fredrick Lane (8 de octubre de 2008). "Los internautas se enfrentan a una nueva y peligrosa amenaza: 'Clickjacking'". newsfactor.com. Archivado desde el original el 13 de octubre de 2008 . Consultado el 8 de octubre de 2008 .
  5. ^ Shahriar, Hossain; Devendran, Vamshee Krishna (4 de julio de 2014). "Clasificación de técnicas de detección y ataques de clickjacking". Revista de seguridad de la información: una perspectiva global . 23 (4–6): 137–147. doi :10.1080/19393555.2014.931489. ISSN  1939-3555. S2CID  43912852.
  6. ^ ¡ El diputado confundido cabalga de nuevo!, Tyler Close, octubre de 2008
  7. ^ abcdefghijk Niemietz, Marcus (2012). "UI que repara ataques en dispositivos Android" (PDF) . Sombrero negro .
  8. ^ No conoces (haz clic) jack Robert Lemos, octubre de 2008
  9. ^ JAstine, Berry. "Número de ayuda de Facebook 1-888-996-3777" . Consultado el 7 de junio de 2016 .
  10. ^ "El gusano viral 'Me gusta' de clickjacking afecta a los usuarios de Facebook". Seguridad desnuda . 31 de mayo de 2010 . Consultado el 23 de octubre de 2018 .
  11. ^ "Gusano de Facebook -" Me gusta"". Seguridad desnuda . 31 de mayo de 2010 . Consultado el 23 de octubre de 2018 .
  12. ^ ab Lekies, Sebastián (2012). "Sobre la fragilidad y las limitaciones de los esquemas actuales de protección contra Clickjacking proporcionados por el navegador" (PDF) . USENIX .
  13. ^ "Trucos para mouse inalámbrico y protección de seguridad de red". JACK DE RATÓN . Consultado el 3 de enero de 2020 .
  14. ^ ab Valotta, Rosario (2011). "Secuestro de cookies". tentacoloViola – sites.google.com . Archivado desde el original el 7 de agosto de 2019 . Consultado el 23 de octubre de 2018 .
  15. ^ ab "Filejacking: cómo crear un servidor de archivos desde su navegador (con HTML5, por supuesto)". blog.kotowicz.net . Consultado el 23 de octubre de 2018 .
  16. ^ ab "Administradores de contraseñas: ataques y defensas" (PDF) . Consultado el 26 de julio de 2015 .
  17. ^ Sahani, Rishabh; Randhawa, Sukhchandan (1 de diciembre de 2021). "Clickjacking: cuidado con hacer clic". Comunicaciones personales inalámbricas . 121 (4): 2845–2855. doi :10.1007/s11277-021-08852-y. ISSN  0929-6212. S2CID  239691334.
  18. ^ "El Clickjacking se encuentra con XSS: un estado de arte". Explotar base de datos. 26 de diciembre de 2008 . Consultado el 31 de marzo de 2015 .
  19. ^ Krzysztof Kotowicz. "Explotación del XSS no explotable con clickjacking" . Consultado el 31 de marzo de 2015 .
  20. ^ Cohen, Richard (31 de mayo de 2010). "Trabajo en Facebook -" Me gusta"". Sofos . Archivado desde el original el 4 de junio de 2010 . Consultado el 5 de junio de 2010 .
  21. ^ Ballou, Corey (2 de junio de 2010). "El término " Likejacking "se pone de moda". jqueryin.com. Archivado desde el original el 5 de junio de 2010 . Consultado el 8 de junio de 2010 .
  22. ^ Pérez, Sarah (2 de junio de 2010). ""Likejacking "despega en Facebook". LeerEscribirWeb. Archivado desde el original el 16 de agosto de 2011 . Consultado el 5 de junio de 2010 .
  23. ^ Kushner, David (junio de 2011). "Filosofía de Facebook: moverse rápido y romper cosas". espectro.ieee.org . Consultado el 15 de julio de 2011 .
  24. ^ Pérez, Sarah (23 de abril de 2010). "Cómo dar "Me gusta" a cualquier cosa en la Web (de forma segura)". LeerEscribirWeb . Consultado el 24 de agosto de 2011 .
  25. ^ Podlipensky, Paul. "Suplantación de cursor y secuestro de cursor". Podlipensky.com . Pablo Podlipensky. Archivado desde el original el 22 de noviembre de 2017 . Consultado el 22 de noviembre de 2017 .
  26. ^ ab Krzysztof Kotowicz (18 de enero de 2012). "Secuestro del cursor de nuevo" . Consultado el 31 de enero de 2012 .
  27. ^ "Aviso de seguridad de la Fundación Mozilla 2014-50". Mozilla . Consultado el 17 de agosto de 2014 .
  28. ^ "Aviso de seguridad de la Fundación Mozilla 2015-35". Mozilla . Consultado el 25 de octubre de 2015 .
  29. ^ "¡Qué es MouseJack!". Bastilla . Consultado el 3 de enero de 2020 .
  30. ^ "CERT VU#981271 Varios dispositivos de teclado/ratón inalámbricos utilizan un protocolo inalámbrico propietario inseguro". kb.cert.org . Consultado el 3 de enero de 2020 .
  31. ^ Giorgio Maone (24 de junio de 2011). "Sin secuencias de comandos en ningún lugar". hackademix.net . Consultado el 30 de junio de 2011 .
  32. ^ Giorgio Maone (8 de octubre de 2008). "Hola ClearClick, adiós Clickjacking". hackademix.net . Consultado el 27 de octubre de 2008 .
  33. ^ abc Michal Zalevski (10 de diciembre de 2008). "Manual de seguridad del navegador, parte 2, reparación de la interfaz de usuario". Corporación Google . Consultado el 27 de octubre de 2008 .
  34. ^ Robert Hansen (4 de febrero de 2009). "Laboratorio de seguridad de aplicaciones web Clickjacking y GuardedID ha.ckers.org". Archivado desde el original el 11 de julio de 2012 . Consultado el 30 de noviembre de 2011 .
  35. ^ Wang, Helen J.; Grier, Chris; Moschchuk, Alejandro; Rey, Samuel T.; Choudhury, Piali; Venter, Herman (agosto de 2009). "La construcción del sistema operativo multiprincipal del navegador web Gazelle" (PDF) . 18.º Simposio de seguridad de Usenix, Montreal, Canadá . Consultado el 26 de enero de 2010 .
  36. ^ "Intersection Observer - Borrador del editor del W3C".
  37. ^ "La confianza es buena, la observación es mejor".
  38. ^ "Desanonimización mediante Clickjacking en 2019".
  39. ^ Giorgio Maone (27 de octubre de 2008). "Hola, IE8, puedo tener alguna protección contra el clickjacking". hackademix.net . Consultado el 27 de octubre de 2008 .
  40. ^ Eric Lawrence (27 de enero de 2009). "Seguridad de IE8 Parte VII: Defensas contra ClickJacking" . Consultado el 30 de diciembre de 2010 .
  41. ^ Eric Lawrence (30 de marzo de 2010). "Combatir el ClickJacking con X-Frame-Options" . Consultado el 30 de diciembre de 2010 .
  42. ^ Ryan Naraine (8 de junio de 2009). "Parche gigante de Apple Safari: más de 50 vulnerabilidades solucionadas". Archivado desde el original el 12 de junio de 2009 . Consultado el 10 de junio de 2009 .
  43. ^ https://developer.mozilla.org/en/The_X-FRAME-OPTIONS_response_header Archivado el 7 de octubre de 2010 en Wayback Machine El encabezado de respuesta X-Frame-Options - MDC
  44. ^ Adam Barth (26 de enero de 2010). "Seguridad en profundidad: nuevas funciones de seguridad" . Consultado el 26 de enero de 2010 .
  45. ^ "Soporte de especificaciones web en Opera Presto 2.6". 12 de octubre de 2010. Archivado desde el original el 14 de enero de 2012 . Consultado el 22 de enero de 2012 .
  46. ^ "Opciones de marco X del campo de encabezado HTTP". IETF. 2013.
  47. ^ "Política de seguridad de contenido nivel 2". W3C. 2016.
  48. ^ "Blog de lcamtuf: X-Frame-Options o resolver el problema equivocado". 10 de diciembre de 2011.
  49. ^ "Política de seguridad de contenido nivel 2". w3.org . 2 de julio de 2014 . Consultado el 29 de enero de 2015 .
  50. ^ "Hoja de trucos para la defensa contra el clickjacking" . Consultado el 15 de enero de 2016 .