È stata rilasciata una nuova versione di passwdqc, un insieme di strumenti per il controllo della complessità delle password e delle frasi password. Esso include il modulo pam_passwdqc, i programmi pwqcheck, pwqfilter (nuovo in questa versione) e pwqgen per uso manuale o da script, insieme alla libreria libpasswdqc. Sono supportati sia i sistemi con PAM (la maggior parte di Linux, FreeBSD, DragonFly BSD, Solaris, HP-UX) che quelli senza PAM (è disponibile l'interfaccia passwordcheck in OpenBSD, è fornito un wrapper per utilizzare pwqcheck da PHP, esiste una versione a pagamento per Windows e i programmi e la libreria possono essere utilizzati anche su altri sistemi).
Rispetto alle versioni precedenti, è stata aggiunta la supporto per file esterni di filtraggio delle password, incluso quelli binari, che attualmente rappresentano un'implementazione di un filtro cuckoo migliorato. Questo filtro garantisce di non trascurare alcuna delle password vietate, ma può occasionalmente portare a falsi positivi, la cui probabilità, data la configurazione e l'algoritmo in uso in passwdqc, è trascurabile. Il controllo della password rispetto al filtro richiede non più di due accessi casuali in lettura dal disco, il che è molto rapido e, in genere, non crea un carico eccessivo. server.
Per la creazione e la gestione di filtri binari in passwdqc è stato aggiunto il programma pwqfilter. Questo può creare un filtro sia da un elenco di password che dai loro hash MD4 o NTLM. Il supporto per gli hash NTLM permette di importare password dalla lista HIBP (Pwned Passwords), distribuita in questo modo. È stato riposto molto impegno nell'ottimizzazione di pwqfilter per quanto riguarda le performance, la compattezza dei filtri ottenuti e il livello di falsi positivi. Ad esempio, la creazione di un filtro cuckoo con un tasso di riempimento del 98% da un file pwned-passwords-ntlm-ordered-by-hash-v7.txt di 21 GiB (22 GB) contenente più di 613 milioni di righe richiede circa 8 minuti su un processore Core i7-4770K. Il filtro risultante occupa 2.3 GiB (2.5 GB) e ha un tasso di falsi positivi di circa 1 su 1.15 miliardi. Con un tasso di riempimento target più basso, il filtro può essere creato molto più rapidamente e avrà un tasso di falsi positivi ancora inferiore, ma la sua dimensione sarà maggiore.
passwdqc gestisce molto bene la prevenzione di password deboli senza l'uso di file esterni. Il loro impiego può aumentare ulteriormente l'efficacia di passwdqc senza arrecare quasi alcun disagio agli utenti, o può consentire di allentare altre restrizioni. NIST raccomanda il controllo delle password scelte dagli utenti rispetto a violazioni note. Per il progetto Openwall, questa rappresenta una potenziale opportunità di finanziamento per lo sviluppo di passwdqc (e non solo) tramite la vendita di filtri già pronti, senza però limitare gli utenti nella possibilità di creare filtri autonomamente utilizzando il programma pwqfilter rilasciato sotto licenza libera.
pwqfilter funziona con stringhe arbitrarie e può essere utilizzato al posto di grep per molteplici scopi, anche quelli non legati a password e sicurezza. Considerando questo, pwqfilter presenta diverse opzioni simili a quelle di grep, evita di utilizzare nomi di opzioni che contraddicono quelli presenti in grep e utilizza gli stessi codici di errore di grep.
Per i compiti in cui i falsi positivi sono estremamente indesiderabili, il loro livello può essere ridotto, ad esempio, a uno ogni quintiliardo (un miliardo di miliardi) con un fattore di carico fino al 44%. (Il filtro cuculo classico non fornisce una riduzione così significativa dei falsi positivi con una riduzione del fattore di carico. In passwdqc questo è ottenuto grazie agli miglioramenti dell'algoritmo).
Fonte: opennet.ru
