
Uno strumento da riga di comando per verificare se le password sono state esposte in violazioni di dati utilizzando l'API Have I Been Pwned (HIBP).
PwnedCheck è uno strumento da riga di comando per verificare se le password sono apparse in violazioni di dati note utilizzando l'API Have I Been Pwned e supporta le esportazioni di vault Bitwarden crittografati.
-hashed-bw-hide-v-statsPuoi scaricare un binario statico precompilato adatto al tuo sistema operativo direttamente dalla pagina delle release:
pwnedcheck_x.x.x_linux_amd64.tar.gz (o arm64)pwnedcheck_x.x.x_darwin_amd64.tar.gz (o arm64)pwnedcheck_x.x.x_windows_amd64.zipLinux / macOS: Apri il terminale nella directory estratta, rendi eseguibile il binario e avvialo:
chmod +x pwnedcheck
./pwnedcheck -h
Windows: non testato, ma il feedback è apprezzato
Apri PowerShell o il Prompt dei comandi nella cartella contenente il file pwnedcheck.exe estratto ed esegui:
.\pwnedcheck.exe -h
Installa la CLI nella tua directory bin di Go:
go install github.com/mohamedation/PwnedCheck/cmd/pwnedcheck@latest
git clone https://github.com/mohamedation/PwnedCheck.git
cd PwnedCheck
make install
Questo installa il binario dell'host corrente nella tua directory bin di Go.
Usa il Makefile per produrre binari di release per Linux o macOS:
make build-linux
make build-macos
I binari vengono scritti in dist/ con la tua architettura Go corrente nel nome del file.
Se vuoi che il binario venga copiato nella tua directory bin di Go con un nome specifico per il sistema operativo, usa:
make install-linux
make install-macos
Quei comandi installano come pwnedcheck.
Esegui dal sorgente:
go run ./cmd/pwnedcheck -v god
Oppure esegui il binario installato:
pwnedcheck -i passwords.list -stats
Verifica una singola password:
pwnedcheck password123
Verifica più password:
pwnedcheck love sex secret god

Verifica le password da un file:
pwnedcheck -i passwords.list
Verifica valori SHA-1 pre-hash:
pwnedcheck -hashed -i passwords.list

Verifica un'esportazione Bitwarden crittografata:
pwnedcheck -bw -i bitwarden_encrypted_export.json -hide -stats
Abilita il logging dettagliato delle richieste HIBP:
pwnedcheck -v password123
-i, --input <string> : File di input contenente password o esportazione JSON (predefinito "passwords.txt")-bw, --bitwarden : Tratta il file di input come un'esportazione JSON crittografata e protetta da password di Bitwarden-H, --hashed : Tratta l'input come hash SHA-1 pre-calcolati invece che come testo in chiaro-x, --hide : Nasconde le password in chiaro dall'output della console-s, --stats : Mostra il riepilogo del tempo di esecuzione e dei risultati al termine-v, --verbose : Stampa ogni richiesta HIBP e lo stato della risposta per mostrare la diagnostica dell'API-c, --credits : Mostra i crediti-h, --help : Mostra l'aiutoPwnedCheck utilizza l'approccio k-anonymity usato da HIBP:
[1/2] Checking...
BAD PASSWORD — BREACH DETECTED (item #1)
Password: 123456
Total runtime: 1.5s
Total passwords checked: 2
Bad passwords found: 1
Good passwords: 1
cmd/pwnedcheck: entrypoint della CLI e parsing dei flaginternal/checker: ciclo di esecuzione e formattazione dell'outputinternal/hibp: client HIBP e hashing delle passwordinternal/bitwarden: decrittografia delle esportazioni Bitwardenmake test # run unit tests
make cover # run tests with coverage summary
Docs: pkg.go.dev · Coverage: Codecov