Ako Linux vie, že nové heslo je podobné starému?
Ak ste niekedy dostali správu, že vaše nové heslo je príliš podobné vášmu starému, potom by ste mohli byť zvedaví, ako váš systém Linux "vie", že sú príliš podobné. Dnešný príspevok SuperUser Q & A poskytuje pohľad na "magickú oponu" v tom, čo sa deje pre zvedavého čitateľa.
Dnešná relácia otázok a odpovedí sa k nám pridelí zdvorilosťou SuperUser - podskupiny Stack Exchange, zoskupenia webových stránok typu Q & A.
Snímka s ukážkou od marc falardeau (Flickr).
Otázka
Čítačka SuperUser LeNoob chce vedieť, ako systém Linux "vie", že heslá sú príliš podobné sebe navzájom:
Pokúšal som sa zmeniť heslo používateľa na rôznych strojoch Linux niekoľkokrát a keď nové heslo bolo podobné starému, operačný systém povedal, že sú príliš podobné.
Vždy som sa pýtal, ako to ovláda operačný systém? Myslel som, že heslá boli uložené ako hash. Znamená to, že ak je systém schopný porovnať nové heslo podobnosti so starým, že je skutočne uložené ako obyčajný text?
Ako systém Linux "vie", že heslá sú príliš podobné sebe navzájom?
Odpoveď
Príslušník SuperUser slhck má odpoveď pre nás:
Vzhľadom k tomu, že pri používaní passwd musíte dodať obe staré aj nové heslá, je možné ich ľahko porovnať v obyčajnom texte.
Vaše heslo je skutočne zhasnuté, keď je nakoniec uložené, ale kým sa to nestane, nástroj, do ktorého zadávate svoje heslo, môže mať prístup k nemu priamo.
Toto je vlastnosť systému PAM, ktorý sa používa na pozadí nástroja passwd. PAM používajú moderné distribúcie Linuxu. Konkrétnejšie, pam_cracklib je modul pre PAM, ktorý umožňuje odmietnuť heslá založené na podobnostiach a slabostiach.
Nejde len o príliš podobné heslá, ktoré možno považovať za neisté. Zdrojový kód obsahuje rôzne príklady toho, čo možno skontrolovať, napríklad či je heslo palindrom alebo či je vzdialenosť medzi dvoma slovami. Cieľom je urobiť heslá odolnejšie proti útokom na slovníky.
Viac informácií nájdete na stránkach pam_cracklib.
Nezabudnite prečítať ostatné živé diskusie cez SuperUser prostredníctvom témy vlákno pripojené nižšie.
Máte niečo doplniť vysvetlenie? Znie to v komentároch. Chcete sa dozvedieť viac odpovedí od iných používateľov technickej úrovne Stack Exchange? Pozrite sa na celý diskusný príspevok tu.