Debian - nastavujeme bezpečnější uložení hesla
V poslední době jsem na webech *.debian-linux.cz a abclinuxu.cz několikrát narazil na zmínku o tom, že se v Debianu používá jako defaultní hash hesel md5, což osobně nepovažuji za dobrý nápad, vzhledem k tomu, že md5 je zdiskreditována (např zde) (jedním z diskreditujících byl dokonce Čech Vlastimil Klíma)
Co to pro nás znamená? V první řadě fakt, že pokud se někdo dostane k našemu /etc/shadow, má teoretickou (ale reálnou) možnost rekonstruovat původní heslo, nebo alespoň sekvenci znaků, která generuje shodnou hash, tedy se teoreticky dá použít k autentizaci…
Je to kritické? Proč se nic neděje? Kritické to není, Debian používá ještě takzvanou “sůl”, která hashovací funkci modifikuje, takže je zneužití dosti ztíženo, nikoliv však znemožněno.
Jak to tedy spravit? Nejlépe je upravit konfigurační soubor autentifikačního systému PAM tak, aby používal jinou hash než md5. Při prohledání manuálové stránky jsem si vybral sha512, která se zdá být dostatečně bezpečná
Otevřete si pod rootem soubor /etc/pam.d/common-password
Řádek:
password [success=1 default=ignore] pam_unix.so obscure md5
změňte takto
password [success=1 default=ignore] pam_unix.so obscure sha512
a pomocí passwd
změňte heslo (stejně to potřebujete, protože to staré už máte dlouho ;-) )
Varování! S PAMem si příliš nehrajte, chybné nastavení PAMu může vést k dost nepříjemným následkům, například k otevření bezpečnostní díry nebo naopak k nemožnosti přihlásit se.