En esta entrada, hablaremos de la posibilidad de  robar la sesión de web.whatsapp. Los miembros de OWASP han publicado una herramienta llamada QRLJacking que sirve para realizar ataques de Spear Phishing en sitios que utilizan QRCodes, tal como es WhatsApp Web.

El esquema de ataque es sencillo, básicamente se debe configurar un servidor web donde tendremos el sitio web falso con el Phishing y el código QRCode con el cual engañaremos a nuestra víctima. Luego entra la parte de la ingeniería social, debemos lograr que la víctima ingrese a nuestro sitio web falso, lea el QRCode con su dispositivo móvil y a partir de ese momento, el atacante ya tendría lo necesario para obtener el acceso.

Gráficamente es algo así:

phising

En el caso de WhatsApp el atacante debería mostrar un QRCode de WhatsApp Web a la víctima y con esto lograr obtener la sesión de WhatsApp Web autenticada.


Manos a la obra:

Lo primero que necesitamos es bajar los archivos de QRLJacking desde GitHub. La configuración consta de 2 partes, por un lado la del Cliente y por otro lado el Server.

En el servidor es necesario subir el archivo qrHardler.php a un servidor web. Este archivo será el encargado de convertir el QRCode que se capturará de WhatsApp a Base64. También devuelve una imagen JPG con el QRCode.

Por otro lado, tenemos el cliente. Debemos configurar nuestro navegador para poder capturar el QRCode de Whatsapp y enviarlo al fichero PHP que está en nuestro servidor.

Para configurar Firefox, debemos colocar en la barra de navegación “about:config” para acceder a las configuraciones avanzadas del navegador, y en la barra de búsqueda debemos filtrar por “security.csp.enable” y deshabilitarla.

cspEsto es necesario ya que la página de WhatsApp viene protegida por CSP y en caso de que se quiera ejecutar el plugin para inyectar en ella y capturar el QRCode, el navegador no lo dejará hacer ya que la web viene con la política “Content Security Policy”

whats

Después, utilizando el add-on Greasemonkey hay que cargar el fichero WhatsAppQRJackingModule.js. Este plugin de Firefox se encarga de inyectar el código JS necesario para extraer el QR Code del sitio web de WhatsApp Web y enviarlo al fichero PHP qrHandler.php, que se encuentra en el servidor web. Luego se genera el fichero JPG con la imagen del QR Code extraído y el sitio web falso podría utilizar dicho QR Code.

Por último, se debe acceder al sitio web de WhatsApp Web desde nuestro propio navegador. Se llevará a cabo todo el proceso, explicado anteriormente, y si el proceso de ingeniería social es correcto, se obtendrá la sesión de WhatsApp Web de un usuario.

La página de WhatsApp Web genera gráficos con datos en formato QRCode cada cierto tiempo, por lo que el código JavaScript inyectado por el plugin va consultando continuamente para ir extrayendo el QRCode nuevo y reportarlo al servidor que lo mostrará en la página web de Phishing. A continuación, se muestra un QRCode válido en la página de WhatsApp Web.

2En este instante el plugin de Firefox Greasemonkey captura el nuevo QRCode y lo envía al servidor dónde se haya configurado la parte Server-Side. Para esta prueba de concepto, el valor base64 del QRCode se envía a la dirección IP del atacante, en concreto al fichero QRHandler.php publicado en el servicio web publicado en esa dirección, que se encargará de generar el fichero JPG con la imagen del QRCode en la web de Phsihing.

Ahora llega el momento de ver cómo un atacante puede obrar para que la víctima lea el QRCode con su móvil. Para ello, el atacante puede hacer un uso de un esquema de Spear Phishing clásico en el que se indique que se ha ganado un premio, quizá suscripción infinita a WhatsApp o llamadas ilimitadas. Esto ya cae en la imaginación de cada uno. El sitio web que se presenta a continuación refresca cada cierto tiempo el valor del QRCode. Nadie regala nada gratis, es algo que tenemos que tener siempre en la cabeza.

4Si la víctima cae en este tipo de engaño, el atacante recibe la sesión de WhatsApp en su navegador de Firefox. Es decir, en el mismo sitio dónde el plugin de Greasemonkey está inyectando el código JavaScript para capturar el QRCode original de WhatsApp Web.

Hackear WhatsApp - Underc0de

Autor: Pablo González Pérez

Posts Relacionados

Comments

comments

Deja una respuesta

Tu email no será publicado. Los campos requeridos estan marcados con *
Puedes usar tags HTML y los atributos: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">