Pas på kodeordskløften mellem 'godt nok' og 'ikke godt nok'

Regler for kodeord og måling af entropi kan give falsk tryghed, når det gælder om at sikre et system mod forsøg på at knække kodeord.

Hvornår er et kodeord godt nok? Det er ikke så let at svare på, som man skulle tro, for det afhænger af, hvor svært det er at knække det, og det er i virkeligheden mere end blot sammensætningen af tal og bogstaver. Det er i hvert fald én af pointerne i en analyse, som forskere fra Microsoft og Carleton University har lavet.

De har set på kodeordsproblemet fra systemadministratorens synspunkt, og det rejser et centralt problem i forhold til kodeordsstyrke. Et kodeord kan nemlig være 'godt nok', men samtidig 'ikke godt nok'.

Det handler om, hvorvidt kodeordet kan modstå henholdsvis et online- og et offline-angreb. Onlineangreb kan eksempelvis være forsøg på login via web, mens offline vil være de tilfælde, hvor hackere har fået fat i passwordfilen.

Problemet med regler for, hvordan brugerne skal sammensætte kodeord, er, at brugerne kan følge reglerne og skabe kodeord, der er stærke nok til at modstå onlineangrebet, men ikke stærke nok til at modstå offlineangrebet.

Dermed falder kodeordet i en kløft mellem de to scenarier, hvor der kan være størrelsesordners forskel på, hvor mange forsøg kodeordet skal kunne modstå. Ifølge forskerne kan et kodeord være sikkert, hvis det kan modstå 10⁶ forsøg inden for en rimelig tidsperiode, mens det skal kunne modstå 10¹⁴ forsøg offline.

Alle forsøg på at forbedre styrken af et kodeord, der allerede har passeret den første tærskel, men ikke er tilstrækkelig til at passere den anden tærskel, er altså en spildt indsats.

10 procent svage kodeord kan være nok

Tilsvarende bør man også overveje, hvornår éns systemer kan forventes at være kompromitteret, hvis en vis procentdel af brugerkontoerne er knækket. Selv hvis blot 10 procent af kontiene er knækket, så kan det være nok til at give adgang til nye angrebsvektorer. Derfor skal man vælge metoder til sikring af login, som forhindrer, at eksempelvis 10 procent af brugerne kunne vælge kodeord, der kunne knækkes i et onlineangreb.

Dermed ikke sagt, at den enkelte bruger ikke skal sørge for at bruge så sikkert et kodeord som muligt. Microsofts analyse handler udelukkende om, hvordan systemadministratoren bør forholde sig til kodeordsstyrke.

Brugeren kan imidlertid ikke vide, hvordan sikkerheden er i systemet. De færreste webtjenester dokumenter, hvordan de opbevarer kodeord. Derfor er brugerens bedste træk at vælge så stærkt et kodeord som muligt og helst kombinere det med tofaktor-autentifikation, skriver sikkerhedsekspert Mark Stockley fra Sophos i et blogindlæg.

Microsoft analyse handler om, hvordan systemadministratoren sikrer sig, at den samlede flok af brugere benytter kodeord, der ikke bringer systemet i fare.

Ideelt set ville alle kodeord være stærke nok til også at modstå månedlange forsøg på at knække passwordfilen med tusindvis af grafikprocessorer på opgaven. Men en tidligere undersøgelse har vist, at selv med de mest almindelige strikse regler for, hvordan kodeord sammensættes, så vil der være 10 procent, der er betydeligt lettere at gætte, end hvis der var tale om ægte tilfældige kodeord efter samme regler.

Normalt taler man om entropi for kodeord, der er et udtryk for længde og antallet af kombinationsmuligheder. Brug af både store og små bogstaver og tal giver flere kombinationsmuligheder pr. tegn end blot bogstaver uden forskel på store og små bogstaver.

Men i praksis kan brugerne overholde reglerne og alligevel lave kodeord, der ikke er særlig sikre. Mange kodeordsstyrkemålere ville sige god for 'Password1Password1'. Men når man skal knække kodeord, så er den bedste strategi at afprøve de kombinationer, der er mest sandsynlige for et menneske at finde på og huske, end rent tilfældigt sammensatte kodeord.

Forsvar med blokering og hashing

I stedet bør systemadministratorer forsøge at sikre loginprocesserne på anden vis. Eksempelvis bør man implementere en måde, der sætter grænser for onlineforsøg, så det eksempelvis ikke er muligt for en bruger at indtaste et forkert kodeord mere end 100 gange i løbet af en måned. Man kan også sætte grænser for antal forsøg fra bestemte IP-adresser.

Tjek af kodeordenes styrke kan med fordel gøres ved at sortliste kodeord, der optræder på kendte lister over kompromitterede kodeord, snarere end generiske regler. Hvis man vil bruge en styrkemåler, til at hjælpe brugerne med at vurdere styrken, kan man bruge Dropbox' zxcvbn, der både tjekker for mønstre og for 30.000 kendte kodeord.

Mod offlineangreb er det bedste forsvar at forstærke hashingen af kodeordene. Man kan eksempelvis gennemløbe hashingen iterativt flere tusinde gange med forskellige salte. Det koster lidt ekstra at validere kodeordene, men gør det meget vanskeligere for hackere at knække kodeordsfilen.

Ifølge forskerne skal man som systemadministrator være bevidst om, at det ikke er gratis at øge kravene til kodeordenes styrke. Der er ingen undersøgelser, der viser, at øgede krav til sammensætningen af kodeord giver en betydelig forbedring af sikkerheden. Problemet er, at kodeordene altså ikke blot skal være stærke nok til at modstå et rimeligt forsøg på at knække dem, men også kunne modstå, at 1.000 kraftige grafikprocessorer arbejder på kodeordsfilen i månedsvis uden at ramme rigtigt på mere end 10 procent af brugerkontoerne.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Følg forløbet
Kommentarer (6)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Jens Madsen

De fleste anvender samme kodeord mange steder, da det ellers er umuligt at huske. Dette giver en ekstra risiko: Snappes kodeordet op et sted, kan den måske misbruges andre steder.

Et godt råd, hvis man bruger samme kodeord, er at gøre dem lidt forskellige, på en måde, som man kan huske. Og naturligvis aldrig gøre det, hvor sikkerheden er vigtig.

Jeg tror ikke dårlige kodeord er et alvorligt problem. Det største problem er at kodeordet aldrig udskiftes, og står til standard "admin", "admin".

I de tilfælde, hvor kodeord opdages, tror jeg det skyldes de på en måde er sniffet, enten fra ens egen PC, eller fra et sted, hvor de er brugt.

  • 1
  • 1
John T. Ripper

Et godt råd, hvis man bruger samme kodeord, er at gøre dem lidt forskellige, på en måde, som man kan huske.

Det er et ret dårligt råd, med mindre hackeren selv sidder og taster hvert enkelt kodeord ind - li'som på gamle films.

Jeg vil opfordre dig til at studere permutationer og hybrid cracking inden du giver flere gode råd.

Måske bruge et par aftener på selv at teste offline cracking tools.

Det handler jo ikke om hvad du tror, men matematik, logik og statistik, kryderet med lidt kreativ tankegang :-)

  • 1
  • 2
Tobias Tobiasen

Det er svært at fatte hvor hurtige computere kan brute force passwords i et offline angreb.
Se f.eks. denne computer fra 2012
http://arstechnica.com/security/2012/12/25-gpu-cluster-cracks-every-stan...
Den kunne teste 350 milliarder passwords pr sekund (NTLM hashing). Det er svært mange forsøg.

Så hvis du har et standard password du varierer lidt så husk at der findes programmer der kan tage dit standard password og ændre det lidt og forsøge nogle milliarder lignede passwords pr. sekund. Så hvis dit passwords er "DSAmjoFdmsi35", "DSAmjoFdmsi36", "DSAmjoFdmsi37" så bliver det gættet på ingen tid.

Det eneste der virker er en password vault på din maskine der kan lave et unik og godt password til alle sites. Som f.eks. 1password eller lastpass.

  • 5
  • 0
Ditlev Petersen

Rigtigt. Men så samler jeg min sikkerhed eller angst omkring den password vault. Er den nu sikker nok eller har nogen (I ved hvem) lavet eller fundet en bagdør af en slags. Hvis den skal fungere, så skal jeg have dimsen replikeret eller på en mobiltelefon (det har så en masse praktiske problemer). Det øger igen risikoen for, at vaulten kan blive stjålet/kopieret og dermed udsat for at offline angreb. Jeg skal jo forresten også have en backup af vaulten. Det kan blive meget profitabelt at smide en stor indsats efter at kompromittere en vault.
Måske burde offline-angreb hedde ro-og-mag angreb på dansk, for så er det nemmere at forstå problemet (for ikke it-folk og Trine Bramsen).

  • 2
  • 0
Klavs Klavsen

Tilføj noget du har.. f.ex. er der jo standarder der fungerer rigtig godt.. f.ex. en yubikey (med krav til touch - som vi lige har slået til i vores firma) - det har alle medarbejdere nu - og al adgang sker KUN auth'et med den - som er låst til touch mode (dvs. den SKAL fysisk røres med fingeren, for hver authentication, signing eller decryption operation den skal foretage).

Jeg gav ~50 kr. pr. stk. og jeg købte kun 10 (vi er et lille firma ;) - og efter nogle få knuder med install/setup fordi vi også skal have forward auth til at virka - så vi også kan bruge den på "remote maskiner", så virker det faktisk ganske godt.

  • 0
  • 0
Klavs Klavsen

https://www.version2.dk/artikel/stjael-tesla-paa-faa-timer-med-ondsindet... - hold op med at bruge passwords alene..

yubikey og andre keys af den type - har den fordel at de giver dig 3 forsøg på at kunne en pinkode (på 8 cifre når det glæder yubikey) - og ellers låser den. Så den giver dig både "noget du ved og noget du har", men finder nogen en måde at omgå dens sikkerhed, så er det selvf. godt med at password OGSÅ.

  • 0
  • 0
Log ind eller Opret konto for at kommentere