Dropp passordene

Introduksjon

I mange år har systemadministratorer og andre som er ansvarlige for passordpolitikken på ulike systemer krevd at du skal ha et passord som følger en liten liste med krav;

  • mimimum 8 tegn
  • må inneholde både nummer og bokstaver
  • må inneholde både store og små bokstaver
  • skal byttest ut hver måned
  • skal ikke finnes i en ordbok
  • passordet skal aldri skrives ned

Du kan gjerne oppsummere disse reglene til at “passord skal være umulige å huske, og skal aldri skrives ned.” Om du virkelig vil dine ansatte så vondt, kan du gjerne fortsette å bruke disse reglene, men vit at det finnes en enklere og bedre måte.

Men først må du være villig til å droppe ideen med passord fullstendig, og kikke på alternativene. Vi kommer her til å presentere et alternativ til passord, og vi forenkler matematikken en god del, siden vi ville brukt alt for mye tid på å utrede dette nøyaktig.

Matematikken bak passord

Et vanlig passord som følger reglene vi gav på forrige side er 8 tegn langt. Det består av en kombinasjon av store og små bokstaver, tall og av og til noen spesialtegn. Det er 26 tegn i det engelske alfabetet, og vi kan gange dette med to for å ta i betraktning store og små bokstaver. Vi tar ikke med de særnorske bokstavene, siden disse ofte ikke er tillatt å bruke i passord, da det kun vil være mulig å logge på datamaskiner med norsk tastatur dersom du bruker slike tegn. Det er 10 tall, og vi har rundt 20 spesialtegn som man kan bruke. Blant spesialtegn tar vi også med tegn som mellomrom, komma, punktum, understrek, parenteser, og så videre. På denne måten lander vi på 82 mulige tegn, som vi runder ned til 80 for enkelhets skyld.

Siden hvert av de 8 tegnene i passordet kan være et av 80 tegn, får vi at antall mulige kombinasjoner av tall er lik 808, et tall i nærheten av 1,678 billiarder. En billiard er et ett-tall etterfulgt av 15 nuller, og er det samme som tusen millioner millioner.

Dette er jo i og for seg et veldig stort tall. Dessverre har det seg slik at personer som forsøker å skaffe seg ulovlig tilgang til dine datamaskiner, gjerne gjør det gjennom passord. Ved å få tak i filen som lagrer passordene på den lokale maskinen, kan angripere bruke såkalte forhåndsutregnede passordmønster og direkte slå opp hva passordet er.

På Windows-maskiner lagres alle passord kortere enn 14 bokstaver som en såkalt LM-hash. Dette er et sett med tall som blir generert fra passordet ditt, og er i prinsippet enveis. Den eneste måten å finne passordet dersom man har LM-mønsteret, er via rå makt. Etterhvert har hackere blitt ganske lure, og det finnes nå DVDer med oppslagstabeller der man kan slå opp LM-mønsteret og få passordet ut i klartekst.

LM-hash er en gammel oppfinnelse, som ble utviklet av IBM, og tatt i bruk når Microsoft samarbeid med IBM om LAN Manager på 80-tallet. Formatet har etterhvert blitt kryptografisk usikkert etterhvert som mer datakraft har blitt tilgjengelig, og i dag er det ikke vanskelig å knekke slike LM-mønster.

Å få tak i filen som inneholder disse mønstrene er ikke spesielt lett på Windows-systemer, men kan gjøres ved å sniffe etter nettverkstrafikk som avslører et påloggingspassord til systemet. Om du har et stort nettverk, vil dette være relativt trivielt, siden det veldig ofte vil finnes en konto som ikke er sikret godt nok. På mange Unix- og Linux-systemer har den tilsvarende filen i mange år vært offentlig lesbar, men de aller fleste distribusjoner har nå gjort denne filen lesbar bare for root-brukeren.

Alternativet

Hva skal vi så bytte ut passord med? Nøkkelkort med kode? Biometrisk identifikasjon? DNA-tester? Alle har bakdeler. Hva om du glemmer nøkkelkortet en dag, eller rett og slett ikke kan huske koden? Biometrisk identifikasjon er fremdeles for ungt til å tas i utstrakt bruk. DNA-tester tar rett og slett for lang tid med dagens teknologi.

Well, thanks to the Internet, I'm now bored with sex. - Phillip J. Fry, Futurama

Det beste alternativet er passfraser. En passfrase er rett og slett en eller flere komplette setninger. Komplette setninger er mye enklere å huske enn et 8-tegns passord med tall og bokstaver. Eksempler er lette å finne;

  • "Kif, I have made it with a woman. Inform the men."(49 tegn, fra Futurama)
  • "Mix these mixed nuts. I see two almonds touching." (igjen 49 tegn, fra Futurama)
  • "Well, thanks to the Internet, I'm now bored with sex." (53 tegn, Futurama)
  • "Døveskole hørte aldri om velgjører" (34 tegn, overskrift i amerikansk avis)

Her valgte vi 4 forskjellige setninger som kan gjøre seg som gode passfraser. Som vi ser, blir en setning eller et sitat fort nesten 50 tegn, selv om det er mye enklere å huske enn passord basert på de vanlige reglene.

Tekniske forskjeller

Rent matematisk er en passfrase vanskeligere å knekke enn ett passord. Om vi bare ser på antall tegn, havner vi fort på astronomiske tall. Et passord på 50 tegn vil gi oss 80^50 mulige kombinasjoner. Dette er et så stort tall at det vil være helt upraktisk å oppgi det i millioner og milliarder; det er omtrent lik 1,42 * 1095. Men dette er ikke en god måte å regne det ut på.

En passfrase er jo i alle hovedsak bygd opp av ord, og i en gjennomsnittlig passfrase kan man tenke seg at det er 8 ord. Tanums store rettskrivingsordbok skal innehode 300 000 ord ifølge omslaget. Den gjennomsnittlige nordmann bruker derimot rundt 10 000 ord til vanlig, og dette er da tallet vi tar utgangspunkt i.

10 0008, eller 1032, er et mye mindre tall enn 8050 som vi fikk når vi regnet bare på antall tegn, men mye større enn 1,67 billiarder som vi kom frem til med et vanlig passord. Og til nå har vi bare tatt i betraktning norske ord, uten forskjeller på store og små bokstaver, bruk av tegnsetting og mellomrom, bruk av dialektord, eller bruk av andre språk. Vi har forsøkt å fremstille forskjellen i grafen til høyre. Legg merke til at y-aksen er fremstilt logaritmisk.

Så, rent matematisk sett er en passfrase mye sikrere enn et passord. Men det finnes også andre grunner til at du bør bytte til passfraser. I alle fall om du bruker Windows-systemer.

På Windows-maskiner lagres i dag passordet i to formater; det ene er LM-hashen som vi nevnte tidligere, og det andre er en NTLM-hash. LM-hashen er gammel, og er langt fra kryptografisk sikker. Den har også sine begrensinger, slik som at den bare kan lagre passord opp til og med 14 tegn. På en vanlig datamaskin lagres passordet på begge disse måtene, dersom passord er mindre enn eller lik 14 tegn. Om du har et passord på 15 tegn, lagres bare NTLM-hashen.

NTLM-hashen er mye sikrere en LM-hashen, og den er derfor å foretrekke. Og det finnes to måter å få datamaskinen til å slutte å lagre LM-hashen på; den første er å bruke lengre passord eller passfraser. Den andre involverer registerredigering, og vi skal ikke gå nærmere inn på denne metoden her.

Hvorfor ikke?

Hvorfor bruker ikke alle passfraser allerede?

Passfraser er mye lengre å skrive enn et passord. Jeg kan på ingen måte forestille meg at mine foreldre skal skrive inn en passfrase på 50 tegn hver gang de skal bruke datamaskinen hjemme. Men i store firmaer er det logisk å innføre passfraser.

Passfraser er enklere å huske, og er sikrere enn passord. Men det har visse begrensinger. Først og fremst krever passfraser at brukeren skriver relativt raskt på et tastatur. Om du føler at du må se på tastaturet når du skriver, vil det kanskje bli for mye arbeid å skrive inn en lang passfrase.

Windows-systemer eldre enn Windows 2000 støtter ikke passord lengre enn 14 tegn. Dersom det fremdeles finnes NT4-maskiner på nettverket deres, bør du ikke prøve å innføre passfraser.

Fra og med Windows 2000 derimot, kan systemet lagre passord opp til 127 tegn. Dette gjør det mulig å bruke ganske lange passfraser. Systemet var egentlig designet for å kunne lagre passord opp til 256 tegn, og utvikleren satte derfor av 256 byte til denne lagringen. Det viste seg derimot fort at på grunn av at mange asiatiske språk bruker såkalte double byte character sets for å lagre tegnene, måtte dette reduseres til 127 tegn, siden disse språkene bruker 2 bytes for å representere 1 tegn.

Hvordan velge passfrase?

Som med passord, er en nødt til å følge noen regler når man skal lage seg en passfrase. Man kan lage dårlige passfraser like lett som man kan lage dårlige passord.

Et eksempel på en dårlig passfrase er "Hasta la vista, baby". Setningen er blant annet å finne på lister over de mest kjente sitatene fra filmer. Sitater fra filmer og TV-serier er som oftest eksempler på dårlige passfraser. Slike setninger vil gjerne være blant de første potensielle angripere prøver å benytte seg av, dersom de vet at det er snakk om passfraser.

Vårt forslag er å forsøke å benytte seg av det faktum at vi ikke har engelsk som morsmål her i landet. Setninger på norsk er gjerne noe av det beste man kan benytte seg av når det gjelder passfraser. Så godt som ingen norske ord finnes i engelske ordbøker, så et såkalt ordbokangrep basert på kombinasjoner av ord fra ordbøker, vil være ubrukelig for å knekke en norsk passfrase.

Det aller beste vil gjerne være å velge en passfrase som er på dialekt, og gjerne ikke følger god norsk rettskriving. På denne måten forhindrer du effektivt et ordbokangrep selv med norske ordbøker. Bare vær helt sikker på at du selv husker hvordan du skrev det.

Les også
Microsoft med ny sikkerhetstjeneste
Les også
Gratis sikkerhetskannere kan misbrukes
Les også
Kun én sikkerhetsoppdatering fra Microsoft
annonse