Permalink

14

Definition af et stærkt password og vigtigheden af disse

Midt i min sommerferie, grillmad og hjemmelavet marmelade (den må min kæreste vis få credit for), har jeg alligevel læst en del og brugt lidt tid på research af forskellige ting. En af de ting som springer i øjnene er styrken af de passwords, som vi anvender (eller rettere: Manglen på samme). For folk som er uvidende eller direkte inkompetente, er password-kompleksitet et problem. Én ting er brugere, som vælger dårlige passwords. Noget helt andet er websites eller systemer, som ikke tillader et “stærkt” password, eller har så dårlige krav til brugernes passwords, at de fristes til at lave et, som de tror er svært at gætte, men i virkeligheden ganske nemt.

Stærke vs. svage passwords

Selvom mange websites ikke lader dig registrere, før end du har valgt et tilpas “stærkt” kodeord, er det alligevel ofte en dårlig sikring, da det frister brugerne til at vælge noget, som er let at huske, og dermed også ofte let at knække. Et par tommelfingerregler som kan anvendes, når man skal lave et password:

  • Brug sætninger, ikke ord. At bruge et ord er en dårlig idé. At bruge et engelsk ord er en endnu dårligere idé. Hackere har store ordbøger af de mest anvendte passwords, som de arbejder ud fra, når de forsøger at knække et kodeord. At sætte ord sammen til en sætning er en god start, fx. gå fra “kaffe” til “kaffenervarm”. Længden af dit password hjælper, men er ikke nok. Ofte overvurderes det, hvor svært det er at gætte et password, blot fordi det er langt, bl.a. fordi ordbøger ofte indeholder sætninger, og hackere ofte kan udregne hvordan et ord skal skilles til flere.
  • Brug tal og matematik om muligt. Nogle websites kræver et specialtegn i dit kodeord, fx ! # $ & eller lignende. Det frister folk til blot at sætte sådan et efter deres sædvanelige kodeord, hvilket ikke gør en hackers job sværere. Kender de først det originale, er det password-cacking-101 at prøve samme password med et specialtegn bagefter. Ved at bruge matematiske ligninger, som giver mening når du læser det, gør du en hackers job væsentlig sværere. Noget alá “2Tusinde+Tres=2060” er langt nok til at være svært at gætte, og har et godt mix mellem tal, store og små bogstaver og specialtegn.
  • Længden er ikke ligegyldig. Dårlige jokes til side, så betyder længden noget. Længde er vigtigere end kompleksitet, sålænge længden ikke blot er et langt ord. Fx sætningen “detergodtatløbe” er svær at gætte, da den har 1.677.259.342.285.730.000.000 mulige kombinationer, blot med 15 små bogstaver. Hvis du indsætter store bogstaver, tal og/eller specialtegn gør du hackerens job endnu sværere.
  • De sædvanelige… Lad være med at bruge hele eller dele af: Dit navn, din hjemby, kendte mennesker, ting fra tv/Internettet og lignende.

Følger du de råd, bør du ende op med et stærkt password, som er svært for en hacker at cracke. Derudover bør du så vidt muligt undgå at bruge samme password mere end ét sted. Brug et nyt hver gang om muligt (og se nederst, hvordan du husker på alle de lange, komplekse passwords).

Brute-force angreb – pesten vi aldrig slipper for

I Meebox har vi et system, som automatisk går ind og lukker af for folk, som taster et kodeord forkert x antal gange indenfor y minutter. Derefter blokeres vedkomne i z minutter. Når jeg går gennem vores logs, mødes jeg er at skræmmende syn. Der bliver dagligt blokeret rigtig mange ip-adresser fra USA, Rusland og (primært) Østen, som forsøger at komme ind ved at brute-force knække et password. Det er bl.a. også derfor at vi kræver af vores kunder, at de vælger stærke passwords, når de registrerer sig hos os, opretter nye e-mail konti eller lignende. Ikke alle forstår hvorfor, at de ikke kan bruge “password123” som deres kode, ligesom de altid har gjort det, men det er der altså en rigtig god grund til…

SecuriBlog lavede for nyligt et forsøg, hvor de opsatte en test-box med SSHD, og indstillede den til at logge alle login-forsøg samt de passwords der blev anvendt. Over 7 dage var der mere end 15.000 angrebsforsøg imod serveren. De mest anvendt brugernavne var:

Login-forsøg Brugernavn
9012 root
179 test
116 oracle
87 admin
82 info
70 user
69 postgres
68 mysql
68 backup
55 guest

De mest forsøgte passwords var således (uafhængigt af brugernavnene):

Forsøg Password
365 123456
201 password
114 12345
105 1234
92 root
92 123
84 qwert
76 test
75 1q2w3e4r
72 1qaz2wsx

Hvis dit password (må Gud forbyde det) er blandt ovenstående, så skift det straks! Hvis det minder om det, så bør du også skifte det.

Når et password ikke er godt nok

Ofte er et stærkt password en helt fin sikkerhed at have foran fx sin e-mail adresse, facebook-konto eller lignende. Men i nogle tilfælde er et password er nok. Når det gælder SSH-login til en server (og især root-login, hvis du har åbnet op for, at man kan det via SSH), bør du som minimum anvende SSH-nøgler, hvor det altid er god practise at have en keyphrase på.

En SSH nøgle (til de, som ikke ved det) kan sammenlignes med nøglen til dit hus. Nøglen ligger altid på din computer. Denne nøgle passer så i alle de nøglehuller, som den er designet til. Hvis du styrer 5 servere kan du lægge din public-key (nøglehullet) på hver af de 5, så du kan logge ind på dem. Hvis du samtidig har et keyphrase koblet på, skal du indtaste et password samtidig. Men uden den nøgle, som ligger på din PC, er der ingen adgang overhovedet. Det øger sikkerheden betragteligt, og bør være standarden.

Personligt er jeg håbløs til at huske komplekse passwords. Derfor anbefaler jeg altid LastPass til at hjælpe. Det kan generere meget lange og komplekse passwords for dig, og det kan huske på dem for dig. Det smarte er, at den nøgle, som bruges til at dekryptere dem (de opbevares naturligvis krypteret inde hos LastPass) ligger lokalt hos dig, så kun du kan dekryptere dem. Hvis ikke du allerede bruger det, så kig på det. Hvis ikke du har noget særligt at lave resten af  ugen, og ikke synes stranden er noget for dig, så gennemgå dine passwords og sikrer dig, at de er stærke nok. Der er ikke noget værre end at miste sin e-mail konto, skype-bruger eller endnu være – en kritisk server pga. et dårligt password.

Edit:

Author: Anders Eiler

Anders er serie-iværksætter, programmør og teknisk chef hos Meebox. Uddannet cand.polyt ved Aalborg Universitet og tosset med det meste sport.

14 Comments

  1. Faktisk kunne en lille krølle på din artikel omhandle 2 faktor authentication. Ideen bag noget man kan huske og noget man har gør at man kan få nogle meget stærke passwords. Tag feks. Yubikey som er en USB dims som virker som et keyboard. Nøglen indeholder et 40 tegns (320 bit) ord (man kan vælge et helt random et). Når man så skal indtaste sit password skriver man feks. h3mligt (og trykker på nøglen). Herefter har man et password på 40+7 tegn. Utroligt nemt at huske og stort set umuligt at bruce-force.

    – 25 øre 🙂

    • Jeg overvejede godt, om jeg skulle inkludere 2-factor authentication i teksten, men synes det var lidt udover scope og så havde jeg i forvejen 1000+ ord. Men ja, 2-factor authentication er helt sikkert både smart og stærkt. Desværre nogengange en smule besværligt (fx NemID), men stærkt…

  2. Enig i at 2-factor er lidt besværligt når det kommer i form at NEMiD. Men lige netop Yubikey’en virker som et tastatur (iphone, android, mac, linux, windows osv.) så det er faktisk kun at sætte den til og trykke. Lige netop ssh brute-force er også ved at gå lidt af mode pga. timeouts. Web authentication er meget nemmere da sessions nøglen ofte er dårligt lavet og så er det blot brute-force på den (typisk er det noget ala md5(brugernavn+microtime+random værdig) og den skifter ikke og tit bliver denne nøgle slet ikke slettet så selv om brugeren er logget ud kan XSS stadig holde en session åben til en angriber. OWASP har en god podcast om det 🙂

  3. Stærke/svage passwords er altid et interessant emne! Og skal man være topsikret alle steder bliver man næsten nødt til at bruge et tool som LastPass (som iøvrigt ser ganske interessant ud) – personligt kan jeg i hvert fald ikke huske 10+ stærke passwords.

    Dagen idag undrer jeg mig stadig over, at der ikke er forskel på store og små bogstaver i passwordet til NemID, ligeså vel som jeg undrer mig over, at login til ubuntu 32 bit (ved ikke om det er linux generelt?) tillader max. 8 karakterer.

    • Jeg kan i hvert fald kun anbefale LastPass. Jeg er rigtig glad for det, og synes det virker rigtig godt. Udover at hjælpe dig med at vælge stærke passwords, hjælper det dig også med at opbevare dem på en sikker måde.

      NemID og case-sensivity… Don’t even get me started! Jeg havde en længere dialog med en stakkels supporter, som prøvede at spise mig af med, at de havde valgt at ignorere case-sensivity af hensyn til den ældre del af befolkningen og brugervenlighed overfor disse. Den lader vi så lige stå et øjeblik…

      Omkring 8-tegns usernames, så er det et lævn tilbage fra de gamle legacy unix systemer, som blot har hængt fast. Mange sysadmins anvender det stadig for at have konsistens i brugernavne osv.

  4. Pingback: Sådan sikrer du dit WordPress site - Anders eiler

    • Jeg anbefaler, at man i al almindelighed undgår korte “dictionary-words”. Black, White, Dragon, Monster – set udfra et brute-force mæssigt synspunkt, er de lige ringe, og så kunne man liste samtlige ord i ordbogen på 8 tegn eller derunder, sorteret efter forskellige online statistikker for hvor meget de bliver brugt. De fremgår dog ikke af den liste, som jeg refererer til, og derfor er de heller ikke på min liste.

      Det man skal bemærke ved de passwords, som er på listen ovenfor, er at de er nemme at skrive på et qwerty-tastatur. Derfor kan jeg godt forstille mig, at qwe123 er mere brugt end Dragon. Men jeg kan ikke sige det med sikkerhed, jeg har ikke undersøgt det nærmere.

  5. Må indrømme at jeg også bruger en password husker. Men kigger man på det med kritiske sikkerhedsøjne så med et svagt password på sin password husker (ikke mangel på krypteret disk i tilfælde af tyveri) har man faktisk pakketeret alle sine password til en mulig angriber. Bruger man en password husker som gemmer ens data hos leverandøren (ala cloud løsning) af password huskeren har man i mine øjne tabt da man egenligt ikke har kontrol over om ens data er sikre (eller bliver misbrugt).

    Min egen løsning på dette har været at de passwords jeg gemmer i min password husker kun er halvdelen af passwordet og resten har jeg på en ubikey. Det i sig selv giver dog problemer da man i teorien skal huske at skifte alle sine passwords ca. hvert 3 måned.

    Sider hvor man ikke kan få lov til at indtaste mere end 12 tegn, ikke understøtter kompleksitet eller hvor man kan bede om at få tilsendt sit password (altså de opbevarer det i klar tekst) bør man helt undgå. Men med +12 tegn i et password så selv med en dårlig krypterings/hash algoritme (med ikke for mange kollisioner) bør passwordet ikke kunne knækkes på 3 måneder (Ifølge sophos security). Sidst men ikke mindst bør man undgå eller indtaste tilfældige strenge i de systemet hvor man kan få lov til at resette/åbne systemet ved at indtaste kærestens navn eller ens kæle dyr (Det har twitter lært på den hårde måde flere gange)

    Og som jer andre ønsker jeg slet ikke at nævne nemid da den på alle måder allerede har tabt i både sikkerhed og brugervenlighed

Skriv et svar

Required fields are marked *.