
Sistema distribuito di cracking delle password con forza bruta che parallelizza attacchi basati su dizionario e Crunch su più macchine tramite client web e desktop.
Attenzione
Ho rivisto il codice di Kraken-Client e, poiché è stata la mia prima app React, è vecchio, goffo e necessita di grossi miglioramenti (anche il server ha bisogno di lavoro). Nelle prossime settimane/mesi farò del mio meglio per riscriverlo in React aggiornato o in un altro framework. Sentiti libero di continuare a usarlo così com'è; se hai problemi, continua a segnalare problemi e fornire feedback! Grazie!
Kraken è uno strumento online distribuito per il cracking di password a forza bruta. Permette di parallelizzare dizionari e generatori di parole basati su crunch su più macchine, sia come app web in un browser web sia come client standalone basato su Electron. Kraken mira ad essere facile da usare, tollerante ai guasti e scalabile.
Ho scritto Kraken perché volevo imparare di più sulla sicurezza offensiva e scrivere una soluzione semplice per superare la limitazione dell'uso di un singolo dispositivo quando si cerca di distribuire carichi di lavoro di forza bruta.
Kraken è un'applicazione dockerizzata che utilizza docker-compose, che lancerà il db (Postgres), un file storage conforme a S3 (Minio), il server e il client browser. Puoi trovare il file docker-compose nella directory principale del repository. Puoi distribuirlo usando il seguente comando:
docker-compose up
Il Client Browser di Kraken dovrebbe essere accessibile a:
Nota: Per eseguire il Client Browser da una macchina remota, DEVI usare HTTPS sia per l'url del server che per l'url del browser. Es. Se stai ospitando il server su 192.168.1.2, allora il client browser sarà disponibile su https://192.168.1.2:8443 e l'url del server dovrebbe essere https://192.168.1.2:8443/api
Per caricare liste di password o dizionari, caricali sulla Minio Console all'indirizzo <a href=http://localhost:9001>localhost:9001. Vedi i passaggi qui sotto per una guida dettagliata. Altrimenti, puoi generare word list dinamicamente usando crunch. Vedi le opzioni di crunch e come usarle qui: pagina man di crunch
Il server di Kraken è eseguito su <a href=http://localhost:5000>localhost:5000 e ospita anche la documentazione Swagger all'indirizzo <a href=http://localhost:5000/swagger>localhost:5000/swagger.
Il client desktop è un'applicazione portabile basata su Electron e può essere eseguito su Mac, Windows e Linux. A causa dei permessi sensibili necessari per funzionare, è altamente consigliato compilarlo da soli clonando il repository e usando:
cd kraken-client
npm install
npm run electron-start
Nota: Il client portabile EXE di Windows deve essere eseguito nella cartella con le sue dipendenze hashcat. I file di hashcat possono essere scaricati dalla homepage o qui. Ho incluso un file zip compresso con l'eseguibile portabile e i file hashcat necessari. Possono essere scaricati:
Le release includono un Linux AppImage che richiede solo l'installazione di hashcat.
Installa hashcat:
sudo apt-get install hashcat
Dovrai concedere il permesso di esecuzione all'AppImage tramite le proprietà.
Per aggiungere le tue wordlist a minio, ecco i passaggi:





Questa guida è in corso di aggiornamento, ma sentiti libero di aprire un issue o contattarmi per qualsiasi aiuto necessario.