Slik fungerer brute force-angrep
Hvorfor lengde teller: Beregningseksempler og mottiltak.
Ved brute force-angrep prøver angripere å gjette et passord ved å systematisk prøve alle mulige tegnkombinasjoner. Ideen bak er enkel: teste så mange kombinasjoner som mulig per sekund – ideelt sett på GPU-er eller i distribuerte systemer. Man snakker også om en uttømmende søk (exhaustive search).
I praksis er slike angrep dessverre ofte vellykkede, fordi mange passord er for korte, er begrenset til få tegn (bare bokstaver) eller finnes i ordlister. Dette reduserer søkeområdet drastisk og gjør det enklere å gjette. Enda viktigere: Man skiller mellom online-angrep (mot påloggingsskjemaer, der hjelper rate-limiting/kontosperring) og offline-angrep (mot stjålne passord-hash, der avgjør hash-funksjonen og passordstyrken angrepstiden).
Å knekke passord (offline) ≠ «dekryptere»
Passord blir ikke dekryptert, men lagret som hashverdier og deretter søkt med gjetning + hashing</ em> (brute force, ordbok-/maskeangrep). Den beregningshastigheten til moderne maskinvare ligger i milliarder per sekund (for raske hash-prosesser), og derfor er lange og treg prosesser (f.eks. Argon2, scrypt, PBKDF2, bcrypt) passord er avgjørende.
Kombinasjon og lengde på passordet
De følgende eksemplene viser innflytelsen av lengde og tegnvalg. For å illustrere dette beregnes 2 milliarder forsøk per sekund (svært kraftig enkeltdatamaskin; reelle verdier varierer sterkt avhengig av maskinvare og – i offline-tilfeller – hash-prosedyre).
Typiske tegn grupper:
- Tall (10: 0–9)
- Bokstaver (52: A–Z og a–z)
- Spesialtegn (≈ 32; avhenger av tjenestens tillatte tegnsett)
Antall mulige kombinasjoner beregnes slik:
Mulige kombinasjoner = (tegnmengde)passordlengde
Viktig: Tabellen viser den maksimale søketiden. I gjennomsnitt er den faktiske tiden omtrent halvparten. I tillegg reduserer ordbok-, regel- og maskeangrep søkeområdet betydelig, mens treg passord-hash-metoder reduserer den effektive hastigheten drastisk.
| Passordet består av | Mulige kombinasjoner (formel) | Nødvendig tid (ved 2 mrd./s) |
|---|---|---|
|
5 tegn |
( 53) ×
263 × 102 = |
17 576 000 / 2 000 000 000 = |
|
7 tegn |
( 71) ×
261+6 = |
56 222 671 232 / 2 000 000 000 = |
|
8 tegn |
( 84) × ( 42 ) × 264
× 322 × 102 = |
19 653 623 808 000 / 2 000 000 000 = |
|
9 tegn |
( 92 ) × ( 73) × ( 42 ) ×
262+3 × 102 × 322 = |
9 197 895 942 144 000 / 2 000 000 000 = |
|
12 tegn |
( 123) × ( 94 ) × ( 53) ×
263+4 × 323 × 102 = |
7 295 525 784 083 496 960 000 / 2 000 000 000 = |
|
14 tegn |
( 144 ) × (
104) × ( 63 ) ×
264+4 × 103 × 323 = |
28 768 690 008 569 256 345 600 000 / 2 000 000 000 = |
Konklusjon: Hvert ekstra tegn mangedobler søkeområdet. Lengde slår kompleksitetsregler – spesielt mot offline-angrep – forutsatt at tjenester bruker egnede, langsomme hash-metoder med salt.
Beskyttelse mot brute force-angrep
Den mest effektive brukerforanstaltningen er et langt, tilfeldig hovedpassord eller en passordfrase (f.eks. flere tilfeldige ord) – unik for hver tjeneste. Password Depot hjelper deg med å generere og viser en estimert angrepstid, som i tillegg til lengde/tegnsett også tar hensyn til svakheter i ordboken.
- Aktiver MFA/2FA (f.eks. TOTP-app eller maskinvaretoken) – der det er mulig er passnøkler enda bedre. Se BSI-råd.
- Ingen gjenbruk av passord. Hver konto trenger sitt eget, sterke passord.
- Langt i stedet for obligatorisk kompleksitet. Tjenester bør tillate lange passord/passfraser (minst 64 tegn) og blokkere kompromitterte passord (svarteliste).
- Langsomme hash-metoder på serversiden (f.eks. Argon2, scrypt, PBKDF2, bcrypt) med salt og passende arbeidsfaktorer; raske hasher som MD5/SHA-1 er ikke egnet for lagring av passord.
- Ratebegrensning/throttling og sperring: Onlineangrep må bremses ved hjelp av begrensede feilforsøk, progressive ventetider og eventuelt CAPTCHA.
I tillegg vanskeliggjør Password Depot Online rate-forsøk ved å sperre inndatamaskinen for hovedpassordet kortvarig etter feil inndata – med økende ventetid ved gjentatte feilforsøk.
Videre kilder
- NIST SP 800‑63B (Rev. 4), Appendix: Strength of Passwords – Lengde, passordfraser, offline-angrep (milliarder hashes/sek.) og rate-limiting-konsept.
- NIST SP 800‑63B (Rev. 3) – Blant annet minimumslengde, tillate lange passord (≥ 64), svartelister, tillate liming; Rate‑Limiting/Throttling med begrensning til maks. 100 påfølgende feilforsøk.
- OWASP Password Storage Cheat Sheet – egnede prosedyrer (Argon2, scrypt, PBKDF2, bcrypt), salt/arbeidsfaktorer.
- OWASP Authentication Cheat Sheet – Retningslinjer for passordinntasting, lengde, svartelister og sperremekanismer.
- BSI: Opprette sikre passord – blant annet lange/komplekse passord og passordfraser; praktiske tips.
- BSI-pressemelding 31.01.2025 – ingen tvungne regelmessige passordendringer; foretrekke 2FA/passnøkler.
- distributed.net RC5 / aktuell proxy-status – Eksempel på uttømmende søk og distribuert datakraft.