
Preuve de concept pour démontrer les attaques de phishing par échange dynamique de QR codes en pratique.
Boîte à outils démontrant une autre approche d'une attaque QRLJacking, permettant de réaliser une prise de contrôle de compte à distance, via du phishing de code QR de connexion.
Elle se compose d'une extension de navigateur utilisée par l'attaquant pour extraire le code QR de connexion et d'une application serveur, qui récupère les codes QR de connexion pour les afficher sur les pages de phishing hébergées.
Regardez la vidéo de démonstration sur Youtube
Lisez-en plus sur mon blog : https://breakdev.org/evilqr-phishing
Les paramètres utilisés par Evil QR sont codés en dur dans le code source de l'extension et du serveur, il est donc important de les modifier pour utiliser des valeurs personnalisées, avant de construire et déployer la boîte à outils.
| paramètre | description | valeur par défaut |
|---|---|---|
| API_TOKEN | Jeton API utilisé pour s'authentifier auprès des points de terminaison REST API hébergés sur le serveur | 00000000-0000-0000-0000-000000000000 |
| QRCODE_ID | ID du code QR utilisé pour lier le code QR extrait à celui affiché sur la page de phishing | 11111111-1111-1111-1111-111111111111 |
| BIND_ADDRESS | Adresse IP avec le port sur lequel le serveur HTTP écoutera | 127.0.0.1:35000 |
| API_URL | URL externe pointant vers le serveur, où la page de phishing sera hébergée | http://127.0.0.1:35000 |
Voici tous les endroits dans le code source où les valeurs doivent être modifiées :
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";
Vous pouvez charger l'extension dans Chrome, via la fonctionnalité Load unpacked :
https://developer.chrome.com/docs/extensions/mv3/getstarted/development-basics/#load-unpacked
Une fois l'extension installée, assurez-vous d'épingler son icône dans la barre d'outils des extensions de Chrome, afin que l'icône soit toujours visible.
Assurez-vous d'avoir Go installé version au moins 1.20.
Pour construire, allez dans le répertoire /server et exécutez la commande :
Windows:
build_run.bat
Linux:
chmod 700 build.sh
./build.sh
Les binaires du serveur construits seront placés dans le répertoire ./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 (par défaut)Evil QR est réalisé par Kuba Gretzky (@mrgretzky) et est publié sous licence MIT.