
Prueba de concepto para demostrar ataques de phishing mediante intercambio dinámico de códigos QR en la práctica.
Kit de herramientas que demuestra otro enfoque de un ataque QRLJacking, permitiendo realizar la toma de control remota de cuentas mediante phishing de códigos QR de inicio de sesión.
Consiste en una extensión de navegador utilizada por el atacante para extraer el código QR de inicio de sesión y una aplicación de servidor que recupera los códigos QR de inicio de sesión para mostrarlos en las páginas de phishing alojadas.
Mira el video de demostración en Youtube
Lee más sobre esto en mi blog: https://breakdev.org/evilqr-phishing
Los parámetros utilizados por Evil QR están codificados directamente en el código fuente de la extensión y el servidor, por lo que es importante cambiarlos para usar valores personalizados antes de compilar e implementar el kit.
| parámetro | descripción | valor por defecto |
|---|---|---|
| API_TOKEN | Token de API utilizado para autenticarse con los endpoints REST API alojados en el servidor | 00000000-0000-0000-0000-000000000000 |
| QRCODE_ID | ID del código QR utilizado para vincular el código QR extraído con el que se muestra en la página de phishing | 11111111-1111-1111-1111-111111111111 |
| BIND_ADDRESS | Dirección IP con puerto en el que el servidor HTTP estará escuchando | 127.0.0.1:35000 |
| API_URL | URL externa que apunta al servidor, donde se alojará la página de phishing | http://127.0.0.1:35000 |
Aquí están todos los lugares en el código fuente donde se deben modificar los valores:
const API_TOKEN = "00000000-0000-0000-0000-000000000000"
const BIND_ADDRESS = "127.0.0.1:35000"
const API_URL = "http://127.0.0.1:35000";
const QRCODE_ID = "11111111-1111-1111-1111-111111111111";
const API_TOKEN = "00000000-0000-0000-0000-000000000000";
const API_URL = "http://127.0.0.1:35000";
const QRCODE_ID = "11111111-1111-1111-1111-111111111111";
Puedes cargar la extensión en Chrome mediante la función Cargar extensión sin empaquetar:
https://developer.chrome.com/docs/extensions/mv3/getstarted/development-basics/#load-unpacked
Una vez instalada la extensión, asegúrate de fijar su icono en la barra de extensiones de Chrome para que el icono sea siempre visible.
Asegúrate de tener Go instalado con una versión al menos 1.20.
Para compilar, ve al directorio /server y ejecuta el comando:
Windows:
build_run.bat
Linux:
chmod 700 build.sh
./build.sh
Los binarios del servidor compilados se colocarán en el directorio ./build/.
./server/build/evilqr-serverhttps://discord.com/login
https://web.telegram.org/k/
https://whatsapp.com
https://store.steampowered.com/login/
https://accounts.binance.com/en/login
https://www.tiktok.com/login
http://127.0.0.1:35000 (por defecto)Evil QR es creado por Kuba Gretzky (@mrgretzky) y se publica bajo la licencia MIT.