Hvis du noen gang har mottatt en melding om at det nye passordet ditt er for likt det gamle, kan du være nysgjerrig på hvordan Linux-systemet ditt 'vet' at det er for mye likt. Dagens SuperUser Q & A-innlegg gir en titt bak ‘magisk gardin’ på det som skjer for en nysgjerrig leser.
Dagens spørsmål og svar-økt kommer til oss med tillatelse fra SuperUser - en underavdeling av Stack Exchange, en samfunnsdrevet gruppe av spørsmål og svar-nettsteder.
Skjermbilde med tillatelse fra marc falardeau (Flickr) .
Spørsmålet
SuperUser-leser LeNoob vil vite hvordan et Linux-system 'vet' at passord er for like hverandre:
Jeg prøvde å endre et brukerpassord på forskjellige Linux-maskiner et par ganger, og da det nye passordet var omtrent som det gamle, sa operativsystemet at de var for like.
Jeg har alltid lurt på, hvordan vet operativsystemet dette? Jeg trodde passord ble lagret som en hash. Betyr dette at når systemet klarer å sammenligne det nye passordet for likhet med det gamle, at det faktisk lagres som ren tekst?
Hvordan vet et Linux-system at passord er for like hverandre?
Svaret
SuperUser-bidragsyter slhck har svaret for oss:
Siden du trenger å oppgi både gamle og nye passord når du bruker passwd, kan de enkelt sammenlignes i ren tekst.
Passordet ditt blir virkelig hash når det endelig er lagret, men inntil det skjer, kan verktøyet der du skriver inn passordet ditt bare få tilgang til det direkte.
Dette er en funksjon av PAM-system som brukes i bakgrunnen til passwd-verktøyet. PAM brukes av moderne Linux-distribusjoner. Mer spesifikt er pam_cracklib en modul for PAM som lar den avvise passord basert på likheter og svakheter.
Det er ikke bare passord som er for like som kan betraktes som usikre. De kildekode har forskjellige eksempler på hva som kan kontrolleres, for eksempel om et passord er et palindrom eller hva redigeringsavstanden er mellom to ord. Ideen er å gjøre passord mer motstandsdyktige mot ordbokangrep.
Se pam_cracklib manpage for more information.
Sørg for å lese gjennom resten av den livlige diskusjonen på SuperUser via emnetråden lenket nedenfor.
Har du noe å legge til forklaringen? Lyd av i kommentarene. Vil du lese flere svar fra andre teknologikyndige Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her .