• Registrarse
  • Iniciar sesión


  • Resultados 1 al 5 de 5

    Aprendiendo que es clickjacking a fondo y con ejemplos.

    Me encuentro este blog donde nos explican que es el termino clickjacking y donde a continuacion el autor nos da detalles de esta vulnerabilidad: Hoy voy a cumplir un poco con mi fama de obsesionado ...

          
    1. #1
      Usuario Avatar de Velcro
      Registrado
      ene 2008
      Ubicación
      Donde me plazca
      Mensajes
      982

      Atención Aprendiendo que es clickjacking a fondo y con ejemplos.

      Me encuentro este blog donde nos explican que es el termino clickjacking y donde a continuacion el autor nos da detalles de esta vulnerabilidad:

      Hoy voy a cumplir un poco con mi fama de obsesionado por la seguridad, y voy a escribir un artículo sobre clickjacking, ese extraño y misterioso término que no para de aparecer por la blogosfera y las páginas de noticias…

      Y es que en seguridad informática, todos los días suceden cosas graves, pero algunas, saltan a los medios populares, se convierten en “noticia” y perciben cierto protagonismo, como si otros problemas de seguridad, no fuesen igual de recientes y graves…pero vaya, esto es como cuando un caso de asesinato salta a la prensa amarillista: lo mismo.

      El clickjacking no es un agujero de seguridad en si mismo, es una forma de darle la vuelta a las tecnologías que utilizamos hoy en día, para engañar al usuario y hacerle creer que ciertas cosas, son lo que realmente no son.

      Este ataque consiste en cargar una página web externa dentro de un iframe invisible (con opacidad 0, por ejemplo) y poner debajo del iframe invisible (con menor z-index), elementos xhtml para que el usuario haga click, pero que realmente, tienen el iframe invisible encima, y es quien recibirá el click.

      Dicho de otra forma, imaginaos un cristal (opacidad 0) con algo debajo, intentamos tocar con el dedo lo que hay debajo, pero tocamos el cristal, esto es lo mismo que sucede cuando ponemos un iframe con opacidad 0 (invisible) encima de ciertos elementos de nuestra web: el usuario irá a hacer click en nuestros elementos, pero hará click dentro del iframe.

      Ahora imaginemos que cargamos en el iframe una página de noticias, como meneame, fresqui, o digg, lo volvemos transparente, y debajo metemos un botón que diga: haz click aquí, posicionándolo justo exactamente debajo de donde aparece el botón para votar a la noticia, dentro de la página de noticias.

      Cuando el usuario haga click en nuestro botón, que está debajo del iframe transparente, justo donde está el botón para votar de la web de noticias que hay cargada dentro del iframe, hará click en el botón votar de la pagina que hay dentro del iframe.

      Creo que lo mejor para acabar de entenderlo es una imagen:



      Sin embargo, muchos de vosotros pensaréis: y para que tanta historia, si para simular el click de un usuario, podemos realizar la petición, cargando un iframe con la dirección de destino?…es decir, podemos realizar un ataque CSRF (Cross-site request forgery).

      Para entrar bien a fondo en el tema del clickjacking, tenemos que comprender primero los ataques CSRF, ya que el clickjacking es una extensión de los CSRF (a mi modo de verlo :).

      Un ataque CSRF consiste en que si en una web, digamos: http://www.example.com, hay una página de noticias, y para votar una noticia, digamos la noticia número 51, se usa un enlace tal como:

      http://www.example.com/noticias.php?votar=51

      Podríamos crear una página con un iframe invisible apuntando a esa dirección, y cuando el usuario entre a nuestra web, sin saberlo, votará la noticia 51.

      Eso es un típico ejemplo de CSRF.

      Sin embargo, cuando ese tipo de ataques empezó a popularizarse, muchos sitios web, como meneame, fresqui, etc empezaron a agregar números de control a las peticiones, es decir, para realizar acciones en la web, las peticiones deben incluir un número aleatorio que te dan cuando cargas la página, de esta forma, sin ese número, no puedes hacer una petición como la anterior y votar una noticia, además, el número de control cambia por cada petición que haces.

      Con esta técnica, parecía que los CSRF habían muerto, y ahí es donde aparece el clickjacking, podemos crear una web, y utilizar lo explicado arriba, para inducir a un usuario a hacer click en un botón, que realmente tiene encima, de forma invisible, un botón de otra web.

      De esta forma, los números de control son enviados por el javascript de la página original, y todo sucede de forma normal.

      Cabe decir, después de toda esta explicación, que existen alguna páginas que no son vulnerables a este ataque, como por ejemplo meneame, ya que no permite que cargues la web dentro de un iframe, lo mismo pasa con gmail, entre otras.

      Aunque a mi me gusta hacer los experimentos con meneame, contactar con Ricardo antes de publicar nada, para que lo arregle, y entonces hacer el artículo, esta vez no puedo, por que meneame no es vulnerable a clickjacking, así que voy a hacer el experimento con fresqui.

      He creado una página que utilizando las técnicas de clickjacking, crea un botón, que de pulsarlo, estarías votando esta noticia de fresqui: Cientificos descubren que el Sol no es una esfera perfecta

      El ejemplo, lo podéis ver aquí, y solo funciona en firefox (paso de internet explorer :)

      ejemplo de clickjacing

      Como se puede ver en el código, hay una función javascript:

      function initBoton() {
      var obj = document.getElementById(”boton”);
      var myWidth = 0, myHeight = 0;
      if( typeof( window.innerWidth ) == ‘number’ ) {
      //Non-IE
      myWidth = window.innerWidth;
      myHeight = window.innerHeight;
      } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
      //IE 6+ in ’standards compliant mode’
      myWidth = document.documentElement.clientWidth;
      myHeight = document.documentElement.clientHeight;
      } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
      //IE 4 compatible
      myWidth = document.body.clientWidth;
      myHeight = document.body.clientHeight;
      }
      var finalW = myWidth-910;
      finalW = finalW/2;
      //910-722 = 188 (mas tamaño…238)
      finalW = finalW + 248;
      obj.style.position=’absolute’;
      obj.style.right=finalW+’px’;
      obj.style.top=’244px’;
      obj.style.display=’block’;
      }


      Que de forma un poco sucia, posiciona el botón rojo justo debajo del botón para votar la noticia en fresqui.

      El iframe es algo así:

      <iframe src=”http://tec.fresqui.com/cientificos-descubren-que-el-sol-no-es-una-esfera-perfecta” style=”opacity:0;position:absolute;top:0px;left:0px;width:99%;height:95%;margin:0px;padding:0px;z-index:100;”></iframe>

      Como conclusión, decir que el ataque no es tan peligroso como lo pintan, aunque tiene su potencial impacto en la seguridad del usuario.

      Por cierto, el ejemplo no se lo bien que irá en otras resoluciones y tal, he intentado hacerlo bastante portable, pero no lo he probado en otro sistema mas que el mio, es una simple prueba de concepto.

      Fuente
      Última edición por Velcro fecha: 24/10/08 a las 17:26:56

    2. #2
      Usuario Avatar de Malware_destroy
      Registrado
      feb 2008
      Ubicación
      En un departamento
      Mensajes
      339

      Re: Aprendiendo que es clickjacking a fondo y con ejemplos.

      Uh! buenísimo, aprendi algo más.

      El clickjacking es re molesto por lo que entiendo.

    3. #3
      Ex-Colaborador Avatar de Hobbit
      Registrado
      sep 2005
      Ubicación
      Venezuela -en u
      Mensajes
      6.722

      Re: Aprendiendo que es clickjacking a fondo y con ejemplos.

      Por acá hay otro ejemplo, con mi pc no funcionó gracias a las varias protecciones y denegaciones de acceso que tengo pero seguramente a alguien más si le funcione GUYA.NET » Blog Archive » Malicious camera spying using ClickJacking


      Salu2
      Linux User Registered #444391

      Blog | Antivirus Online | Eliminar Malwares | Antivirus Gratis


      * Síguenos en nuestro Twitter y hazte nuestro amigo en Facebook.
      * Infórmate de las ultimas amenazas de la red desde: InfoSpyware Blog
      * No se resuelven dudas por Privados ni por E-mail, ya que para eso esta el foro.

    4. #4
      Usuario Avatar de izm94
      Registrado
      ago 2008
      Ubicación
      Lima - Perú(con la trigonometria dificil!)
      Mensajes
      37

      Sonrisa Re: Aprendiendo que es clickjacking a fondo y con ejemplos.

      buen aporte man, al hacer click en en el ejemplo de la pagina que pusistes me aparecio esto:

      [/URL]

    5. #5
      Usuario Avatar de Agrevio
      Registrado
      oct 2007
      Ubicación
      Peru
      Mensajes
      1.560

      Re: Aprendiendo que es clickjacking a fondo y con ejemplos.

      Buena Velcro...

      Gracias por el dato... pues algo mas para aprender en esta larga historia...

      Saludos...!!