Het gebruik van het SHA-1 hashingalgoritme met een salt is niet voldoende voor het beschermen van wachtwoorden, zoals de recente hack van beveiligingsbedrijf HBGary en rootkit.com heeft laten zien. Rootkit.com werd gehackt omdat het de website is van de eigenaar van HBGary. Een werknemer van dit bedrijf wilde informatie over kernleden van Anonymous aan de FBI verkopen, waarop de anonieme internetbeweging terugsloeg.
Veel websites gebruiken MD5, SHA1 of SHA-256 om wachtwoorden van gebruikers te hashen. "Verlichte ontwikkelaars 'salten' zelfs het wachtwoord. De afgelopen jaren waren er verhitte discussies over het genereren van salt-waarden en hoe lang ze zouden moeten zijn", zegt Jarno Niemelä van het Finse F-Secure. Volgens hem vergeten veel mensen het feit dat MD en SHA hashes ontwikkeld zijn voor rekenkracht, en de kwaliteit van de salt-waarden niet veel uitmaakt als een aanvaller volledige controle over de server heeft, zoals met rootkit.com gebeurde. "Als een aanvaller root-toegang heeft, hebben ze je wachtwoorden, salt en de code die je gebruikt om de wachtwoorden te verifiëren."
Niemelä benadrukt dat elk security-ontwerp gebaseerd moet zijn op een scenario waarbij de aanvaller volledige toegang tot alles op de server heeft. Het salten van wachtwoorden moet vooral vooraf berekende aanvallen via rainbow tables voorkomen. "En lang werd aangenomen dat zolang vooraf berekende aanvallen waren te voorkomen, de wachtwoorden relatief veilig waren, zelfs als de aanvaller de salt-waarden samen met het wachtwoord in handen kreeg."
Videokaart
Een aanvaller kan via moderne videokaarten echter miljarden brute-force pogingen per seconden uitvoeren. Met een enkele ATI HD 5970 videokaart kan een aanvaller in 33 dagen alle wachtwoorden dekken die gelijkstaan aan een rainbow table (2^52.5 hashes). Daarbij zal een aanvaller over meerdere kaarten beschikken en wordt de tijd dus steeds korter.
De sterkte van de wachtwoorden is dan ook het enige dat de accounts kan beschermen. Helaas kiezen de meeste mensen een zwak wachtwoord. "Door woordenboek en brute-force-aanvallen te combineren, zal het niet lang duren om een groot aantal wachtwoorden te kraken, zelfs op een grote site met veel accounts."
Oplossing
Niemelä vergelijkt wachtwoorden met een kluis, waarbij niet de lengte van de code die nodig is om de kluis open te breken belangrijk is, maar hoe lang elke poging duurt. "Dit onderstreept dat SHA-1 of een andere plat hashingalgoritme voor veilige wachtwoord-authenticatie ongeschikt is." In plaats van SHA-1 zouden websites dan ook oplossingen zoals PBKDF2, Bcrypt of PBMAC moeten kiezen.
Deze posting is gelocked. Reageren is niet meer mogelijk.