GNU/Linux >> Znalost Linux >  >> Linux

Proč je toto náhodné heslo označeno příznakem, že je příliš jednoduché/systematické?

Jaký je náhodný řetězec M1uG*xgRCthKWwjIjWc*010iSthY9buc je detekováno jako příliš zjednodušující/systematické pro heslo podle passwd a cracklib-check? Vyzkoušejte to na svém počítači a uvidíte

echo "M1uG*xgRCthKWwjIjWc*010iSthY9buc" | cracklib-check

Všimněte si, že toto není moje heslo, ale jiný náhodně vygenerovaný řetězec ze stejného generátoru náhodných hesel, který dává stejný výsledek.

Přijatá odpověď:

Protože cracklib je open source, odpověď lze nalézt ve zdrojovém kódu.

„Příliš zjednodušené/systematické“ znamená, že existuje příliš mnoho znaků, kterým předchází jeden z jejich abecedních sousedů. Proto jsou „ab“ nebo „ba“ považovány za špatné, ale „ac“ nebo „ca“ jsou v pořádku, protože b je vynecháno.

Před tímto patchem z 2010-03-02 povoluje maximálně čtyři znaky které vykazují tuto vlastnost. Např. „bar12345“ by selhal, protože znaky „a“, „2“, „3“, „4“ a „5“ jsou abecední sousedé předchozích znaků.

slm ve své odpovědi zjistil, že M1uG*xgRCthKWwjIjWc*010iS bylo v pořádku, zatímco M1uG*xgRCthKWwjIjWc*010iSt není. Pojďme analyzovat. Zde jsou znaky, které cracklib-check považuje za náznaky systematického hesla:

M1uG*xgRCthKWwjIjWc*010iS
               ^^    ^^

což je pod maximální hodnotou čtyři, ale přidá se t:

M1uG*xgRCthKWwjIjWc*010iSt
               ^^    ^^  ^

posune jej nad limit, protože T následuje po S (zdá se, že test nerozlišuje malá a velká písmena).

Patch změní maximální limit, takže závisí na celkové délce hesla, aby se předešlo falešným pozitivním výsledkům, jako je tento.


Linux
  1. 10 způsobů, jak vygenerovat náhodné heslo v Linuxu

  2. Hašování hesel a proč to potřebujeme

  3. Jak vygenerovat náhodné heslo v linuxu pomocí /dev/random

  1. Jak generovat/šifrovat/dešifrovat náhodná hesla v Linuxu

  2. Proč Vim přidává nový řádek? Je to konvence?

  3. IP Forwarding =kdy a proč je to vyžadováno?

  1. Proč se přesměrování Stderr na /dev/null provádí tímto způsobem?

  2. 8 způsobů, jak vygenerovat náhodné heslo v Linuxu

  3. Proč tento plášťový ropovod vystupuje?