Cabecera-v2-web.jpg

Whatsapp-Phishing: cómo robar la sesión de un usuario de WhatsApp Web


Desde 2015 podemos usar WhatsApp Web mediante un navegador previamente "pareado" con nuestro móvil. Esto aumenta la usabilidad del popular chat pero también abre una ví­a más para que un tercero malintencionado intercepte nuestra comunicación (MiTM) y secuestre nuestra sesión.

Resumiendo el proceso de login con WhatsApp Web, el Servidor enví­a un código QR al navegador del usuario, el cual debe ser escaneado por la aplicación del teléfono para que verifique el login contra el servidor. Si es válido el servidor enviará el token correspondiente directamente al navegador:


whatsapp_web_1.png


Si nos fijamos en el esquema anterior, el vector de ataque podrí­a ser perfectamente un escenario tí­pico de phising. El atacante sólo tiene que interceptar el código QR y presentárselo a la ví­ctima mediante una página falsa, de tal manera que cuando lo escanee con el móvil y se valide, también recibirá el token que le permitirá autenticarse en WhatsApp Web:


whatsapp_attack.png



Por seguridad, WhatsApp no muestra un código QR estático si no que el mismo va cambiando cada pocos segundos, algo que solventa perfectamente la herramienta que veremos a continuación capturándolo continuamente mediante scripting y enviándolo a la ví­ctima mediante websockets.

Se trata de "whatsapp-phishing" del alemán Martin Wagner (Mawalu) a la que empezaremos a echarle un vistazo, ya sabéis, siempre con propósitos educativos:

Funcionamiento

La herramienta utiliza selenium para obtener los códigos QR y express.js + socket.io para mostrarlos en una página aparte. Su funcionamiento es el siguiente:

  • El programa inicia un servidor http y socket.io.
  • Si un nuevo cliente se conecta a socket.io, la aplicación realiza una solicitud a una instancia de selenium para iniciar un nuevo navegador y conectarse a web.whatsapp.com.
  • Posteriormente se obtienen los datos del código QR y los envia al cliente a través de la conexión websocket.
  • El javascript del cliente entonces muestra el código QR al usuario.
  • Si la ví­ctima explora el código con su teléfono, el document.cookie y localStorage del navegador de selenium se descargan en un archivo en la máquina del atacante.
  • Los datos adquiridos se pueden utilizar para iniciar sesión en la cuenta de la ví­ctima utilizando cualquier navegador.


Limitaciones

  • El usuario verá el navegador adicional cuando enumere sus dispositivos autenticados en Web Whatsapp.
  • La ví­ctima recibirá una advertencia si un navegador adicional se registra en el cliente web mientras está utilizando Whatsapp Web.
  • Sigue siendo un ataque de ingenierí­a social: la ví­ctima tiene que ser engañada para permitir el acceso.


Fuente. blog.segu-info.com.ar


pie.png

CERT-PY | Centro de Respuestas a Incidentes Cibernéticos
Ministerio de Tencnologí­as de la Información y Comunicación (MITIC)

Avda. Gral. Santos c/ Concordia | Telefono: (595 21) 217-9000
República del Paraguay

80x15.png

Versión del Template 1.11