Construido con ❤️ para la comunidad de investigación cripto.
Dado que las carteras vulnerables a menudo generaban direcciones para múltiples redes usando la misma semilla:
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install -y build-essential cmake git
sudo apt-get install -y libssl-dev libsecp256k1-dev
========================================
Escáner CVE-2023-31290 - SOLO BITCOIN
========================================
DESCRIPCIÓN:
Esta herramienta explota la vulnerabilidad CVE-2023-31290 (Milk Sad) en libbitcoin-explorer.
La vulnerabilidad utiliza un PRNG Mersenne Twister inicializado con una marca de tiempo de 32 bits.
Genera mnemónicos BIP39 de 12 y 24 palabras a partir de cada semilla de 32 bits.
Deriva direcciones Bitcoin (P2PKH, P2SH, Native SegWit).
Comprueba contra un índice de prefijo de 24 bits preconstruido de direcciones conocidas.
Multihilo con E/S mapeada en memoria: hasta 150,000 semillas/segundo.
TIPOS DE DIRECCIONES COMPATIBLES:
- Legacy P2PKH (1...)
- P2SH (3...)
- Native SegWit (bc1...)
RUTAS DE DERIVACIÓN:
m/44'/0'/0'/0/0 → P2PKH (1...)
m/49'/0'/0'/0/0 → P2SH (3...)
m/84'/0'/0'/0/0 → Native SegWit (bc1...)
COMPILACIÓN:
g++ -std=c++17 -O3 -pthread -o scan_btc scan_btc.cpp -lssl -lcrypto -lsecp256k1
USO:
./scan_btc --demo 12345
./scan_btc hex160.bin 0 1000000
IMPORTANTE:
Si se encuentra una dirección Bitcoin, revisa la misma mnemónica para:
Litecoin (LTC), Dogecoin (DOGE), Dash (DASH),
Zcash (ZEC), Bitcoin Cash (BCH) y otras.
Utilizan el MISMO hash RIPEMD-160 con diferentes versiones de dirección.
========================================
Escáner CVE-2023-31290 - SOLO ETHEREUM
========================================
DESCRIPCIÓN:
La misma vulnerabilidad CVE-2023-31290, pero orientada a direcciones Ethereum.
Genera mnemónicos BIP39 de 12 y 24 palabras a partir de semillas de 32 bits.
Deriva direcciones Ethereum utilizando la curva SECP256K1 y el hash Keccak-256.
Comprueba contra un índice preconstruido de direcciones con saldos.
Totalmente multihilo y optimizado para escaneo de alta velocidad.
TIPO DE DIRECCIÓN COMPATIBLE:
- Direcciones Ethereum (0x...)
RUTAS DE DERIVACIÓN:
m/44'/60'/0'/0/0 ... m/44'/60'/0'/0/9 → estándar de Ethereum
COMPILACIÓN:
g++ -std=c++17 -O3 -pthread -o scan_eth scan_eth.cpp -lssl -lcrypto -lsecp256k1
USO:
./scan_eth --demo 12345
./scan_eth hex160.bin 0 1000000
IMPORTANTE:
Si se encuentra una dirección Ethereum, revisa la misma mnemónica para:
BNB Smart Chain, Polygon, Avalanche C-Chain,
Arbitrum, Optimism y otras cadenas compatibles con EVM.
Utilizan la MISMA ruta de derivación y el mismo formato de dirección.
========================================
AMBOS ESCÁNERES - INFORMACIÓN ADICIONAL
========================================
Si se encuentra Bitcoin → revisa también: LTC, DOGE, DASH, ZEC, BCH
Si se encuentra Ethereum → revisa también: BNB, MATIC, AVAX, ARB, OP
RAZÓN: La misma frase semilla se utilizó en múltiples blockchains
durante la era vulnerable (2015-2018).
ARCHIVOS REQUERIDOS:
- bip39.txt (lista de palabras BIP39)
- hex160.bin (archivo binario con hashes RIPEMD-160 de 20 bytes)
========================================
========================================
Escáner CVE-2023-31290 - SOLO BITCOIN
========================================
DESCRIPCIÓN:
Esta herramienta explota la vulnerabilidad CVE-2023-31290 (Milk Sad) en la librería libbitcoin-explorer.
La vulnerabilidad utiliza un generador Mersenne Twister con una marca de tiempo de 32 bits.
Genera frases mnemónicas BIP39 de 12 y 24 palabras para cada semilla de 32 bits.
Calcula direcciones Bitcoin (P2PKH, P2SH, Native SegWit).
Comprueba contra un índice de prefijo de 24 bits preconstruido.
Multihilo con mapeo de archivos en memoria: hasta 150,000 semillas/segundo.
TIPOS DE DIRECCIONES COMPATIBLES:
- Legacy P2PKH (que empiezan con 1...)
- P2SH (que empiezan con 3...)
- Native SegWit (que empiezan con bc1...)
RUTAS DE DERIVACIÓN:
m/44'/0'/0'/0/0 → P2PKH (1...)
m/49'/0'/0'/0/0 → P2SH (3...)
m/84'/0'/0'/0/0 → Native SegWit (bc1...)
COMPILACIÓN:
g++ -std=c++17 -O3 -pthread -o scan_btc scan_btc.cpp -lssl -lcrypto -lsecp256k1
USO:
./scan_btc --demo 12345
./scan_btc hex160.bin 0 1000000
IMPORTANTE:
Si se encuentra una dirección Bitcoin, revisa la misma mnemónica para:
Litecoin (LTC), Dogecoin (DOGE), Dash (DASH),
Zcash (ZEC), Bitcoin Cash (BCH) y otras.
Utilizan el MISMO hash RIPEMD-160 con diferentes versiones de dirección.
========================================
Escáner CVE-2023-31290 - SOLO ETHEREUM
========================================
DESCRIPCIÓN:
La misma vulnerabilidad CVE-2023-31290, pero orientada a direcciones Ethereum.
Genera frases mnemónicas BIP39 de 12 y 24 palabras a partir de semillas de 32 bits.
Calcula direcciones Ethereum utilizando la curva SECP256K1 y el hash Keccak-256.
Comprueba contra un índice preconstruido de direcciones con saldos.
Totalmente multihilo y optimizado para escaneo de alta velocidad.
TIPO DE DIRECCIÓN COMPATIBLE:
- Direcciones Ethereum (que empiezan con 0x...)
RUTAS DE DERIVACIÓN:
m/44'/60'/0'/0/0 ... m/44'/60'/0'/0/9 → estándar de Ethereum
COMPILACIÓN:
g++ -std=c++17 -O3 -pthread -o scan_eth scan_eth.cpp -lssl -lcrypto -lsecp256k1
USO:
./scan_eth --demo 12345
./scan_eth hex160.bin 0 1000000
IMPORTANTE:
Si se encuentra una dirección Ethereum, revisa la misma mnemónica para:
BNB Smart Chain, Polygon, Avalanche C-Chain,
Arbitrum, Optimism y otras redes compatibles con EVM.
Utilizan las MISMAS rutas de derivación y el mismo formato de dirección.
========================================
AMBOS ESCÁNERES - INFORMACIÓN ADICIONAL
========================================
Si se encuentra Bitcoin → revisa también: LTC, DOGE, DASH, ZEC, BCH
Si se encuentra Ethereum → revisa también: BNB, MATIC, AVAX, ARB, OP
RAZÓN: La misma frase semilla se utilizó en varias blockchains
durante la era vulnerable (2015-2018).
ARCHIVOS REQUERIDOS:
- bip39.txt (lista de palabras BIP39)
- hex160.bin (archivo binario con hashes RIPEMD-160 de 20 bytes)
========================================