
Cet outil génère des phrases mnémoniques BIP-39 dérivées de timestamps Unix, explorant les implications de la vulnérabilité 'Milk Sad' (CVE-2023-39910).
Cet outil est conçu pour générer des phrases mnémoniques BIP-39 (phrases de 24 mots) basées sur des horodatages Unix, en explorant spécifiquement les phrases qui pourraient être générées par la vulnérabilité « Milk Sad » (CVE_2023-39910).
Le Générateur de mnémoniques Milk Sad crée des phrases mnémoniques BIP-39 de 24 mots en utilisant les horodatages Unix comme source d'entropie. Il vise à générer toutes les phrases de départ possibles qui auraient pu être produites en raison du défaut spécifique de collecte d'entropie basé sur l'horodatage associé à la vulnérabilité « Milk Sad ».
Vous avez deux options pour installer et exécuter sur votre système :
install.shCe script automatise le processus de compilation et prend en charge les dépendances courantes pour les systèmes Linux basés sur Debian/Ubuntu.
cd MilkSad-Mnemonic-Generator
chmod +x install.sh
./install.sh
Le script vérifiera la présence des outils de construction nécessaires (comme g++, make, qmake, libssl-dev, libqt5widgets5-dev). Si certains manquent, il tentera de les installer (en demandant votre mot de passe sudo si nécessaire). Après avoir configuré les dépendances avec succès, il compilera les applications CLI et GUI et les placera directement dans le répertoire racine du projet.Si vous préférez compiler les applications vous-même, suivez ces étapes manuelles :
Assurez-vous d'avoir les paquets de développement suivants installés sur votre système Debian/Ubuntu :
g++ (généralement inclus dans le paquet build-essential)make (également dans build-essential)qmake (fourni par qt5-qmake ou qtbase5-dev)libssl-dev (essentiel pour les fonctions cryptographiques utilisées par l'outil)libqt5widgets5-dev (requis pour le développement Qt GUI ; ce paquet inclut souvent qtbase5-dev)Vous pouvez installer ces prérequis en utilisant :
sudo apt update
sudo apt install build-essential qt5-qmake libssl-dev qtbase5-dev
cd src/cli
g++ :
g++ -std=gnu++11 -Wall -Wextra -O2 milk_sad_generator.cpp -o milk_sad_generator -lcrypto -lssl
mv milk_sad_generator ../../
cd ../..
cd src/gui
qmake pour générer le Makefile du projet Qt :
qmake mnemonic_generator.pro
make :
make
mv milk_sad_generator_gui ../../
cd ../..
Pic/ : Pour que l'interface graphique trouve correctement son image de fond, vous devez déplacer le dossier Pic/ de src/gui/ vers la racine du projet :
mv src/gui/Pic .
Une fois installé, vous trouverez deux exécutables directement dans le répertoire racine de votre projet : ./milk_sad_generator (version en ligne de commande) et ./milk_sad_generator_gui (version avec interface graphique).
./milk_sad_generator_gui # Pour lancer l'application GUI
# OU
./milk_sad_generator # Pour lancer l'application CLI
Ce mode génère une seule phrase mnémonique de 24 mots pour une date et une heure précises que vous spécifiez.
1970-01-01 00:00:00 pour le premier horodatage. Si l'anglais est choisi, il générera la phrase mnémonique "milk sad ...".mnemonic_[language].txt.Ce mode génère des mnémoniques pour chaque horodatage dans une plage de dates de début et de fin spécifiée.
2017-01-01:2018-12-31 (Cela générera des mnémoniques pour tous les horodatages entre le 1er janvier 2017 et le 31 décembre 2018 inclus.)mnemonics_range_[language].txt.Ctrl+C) et de reprendre plus tard sans perdre la progression.Ce mode génère tous les mnémoniques possibles sur toute la plage des horodatages Unix 32 bits (du 1er janvier 1970 au 19 janvier 2038).
all_mnemonics_[language].txt.mnemonic_[language].txtmnemonics_range_[language].txtall_mnemonics_[language].txtgeneration_progress_range.bin (pour l'Option 2) / generation_progress_full.bin (pour l'Option 3)Ctrl+C. L'outil sauvegardera automatiquement sa progression actuelle..bin correspondant sera automatiquement supprimé.Si vous avez dû arrêter un processus de génération (par exemple avec Ctrl+C), vous pouvez reprendre de manière transparente là où vous vous êtes arrêté :