Een nieuwe versie van passwdqc is uitgebracht - een set tools voor het controleren van de complexiteit van wachtwoorden en wachtzinnen, inclusief de pam_passwdqc-module, de programma's pwqcheck, pwqfilter (toegevoegd in deze versie) en pwqgen voor handmatig gebruik of vanuit scripts, evenals de bibliotheek libpasswdqc. Zowel systemen met PAM (de meeste Linux, FreeBSD, DragonFly BSD, Solaris, HP-UX) als zonder PAM worden ondersteund (de passwordcheck-interface in OpenBSD wordt ondersteund, er is een wrapper voor het gebruik van pwqcheck vanuit PHP beschikbaar, en er is een betaalde versie voor Windows, en de programma's en bibliotheek kunnen ook op andere systemen worden gebruikt).
In vergelijking met eerdere versies is ondersteuning voor externe wachtwoordfilterbestanden toegevoegd, waaronder binaire bestanden, die momenteel een implementatie van een verbeterd cuckoo-filter zijn. Dit filter zal gegarandeerd geen van de verboden wachtwoorden doorlaten, maar kan af en toe valse positieven opleveren, waarvan de kans bij de instellingen en algoritme die in passwdqc worden gebruikt, verwaarloosbaar klein is. De controle van een wachtwoord op aanwezigheid in het filter vereist niet meer dan twee toegangspogingen voor willekeurige leesbewerking vanaf de schijf, wat zeer snel is en doorgaans geen buitensporige belasting veroorzaakt. de server.
Voor het maken en werken met binaire filters is de pwqfilter-programma toegevoegd aan passwdqc. Dit programma kan een filter aanmaken zowel uit een lijst van wachtwoorden als uit hun MD4 of NTLM-hashes. Ondersteuning voor NTLM-hashes maakt het mogelijk om wachtwoorden te importeren uit de HIBP-lijst (Pwned Passwords), die in die vorm wordt verspreid. Er is veel moeite gestoken in het optimaliseren van pwqfilter voor snelheid, compactheid van de verkregen filters en het niveau van valse positieven. Bijvoorbeeld, het maken van een cuckoo-filter met een belastingverhouding van 98% uit het bestand pwned-passwords-ntlm-ordered-by-hash-v7.txt met een grootte van 21 GiB (22 GB) en meer dan 613 miljoen regels duurt ongeveer 8 minuten op een Core i7-4770K-processor. Het resulterende filter is 2,3 GiB (2,5 GB) groot en heeft een niveau van valse positieven van ongeveer 1 op 1,15 miljard. Met een lagere doelbelastingverhouding kan het filter veel sneller worden gemaakt en zal het een nog lager niveau van valse positieven hebben, maar de grootte zal groter zijn.
passwdqc gaat zeer goed om met het niet toestaan van zwakke wachtwoorden zonder gebruik te maken van externe bestanden. Hun gebruik kan de effectiviteit van passwdqc nog verder verhogen met bijna geen extra ongemak voor gebruikers, of kan het mogelijk maken om andere beperkingen te versoepelen. Het controleren van de door gebruikers gekozen wachtwoorden op bekende lekken wordt aanbevolen door NIST. Voor het Openwall-project is dit een potentiële mogelijkheid om de ontwikkeling van passwdqc (en meer) te financieren door de verkoop van kant-en-klare filters, zonder gebruikers te beperken in hun mogelijkheid om zelf filters te creëren met behulp van het onder een vrije licentie vrijgegeven programma pwqfilter.
pwqfilter werkt met willekeurige tekenreeksen en kan worden toegepast in plaats van grep voor veel doeleinden die zelfs niet gerelateerd zijn aan wachtwoorden en beveiliging. Gezien dit, heeft pwqfilter verschillende opties die vergelijkbaar zijn met die van grep, vermijdt het gebruik van optie-namen die in tegenspraak zouden zijn met die van grep, en gebruikt dezelfde retourcodes als grep.
Voor taken waarbij valse positieven uiterst ongewenst zijn, kan hun niveau worden verlaagd tot bijvoorbeeld één op een quintiljoen (miljard miljard) bij een belastingfactor tot 44%. (De klassieke cuckoo-filter biedt niet zo'n significante verlaging van het niveau van valse positieven bij een verlaagde belastingfactor. In passwdqc wordt dit bereikt door verbeteringen in het algoritme).
Bron: opennet.ru
