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
(3 små bokstaver,
2 tall)

( 53) × 263 × 102 =
17 576 000

17 576 000 / 2 000 000 000 =
0,008788 sekunder

7 tegn
(1 stor bokstav,
6 små bokstaver)

( 71) × 261+6 =
56 222 671 232

56 222 671 232 / 2 000 000 000 =
28,111335616 sekunder

8 tegn
(4 små bokstaver,
2 spesialtegn,
2 tall)

( 84) × ( 42 ) × 264 × 322 × 102 =
19 653 623 808 000

19 653 623 808 000 / 2 000 000 000 =
9 826,811904 sekunder =
≈ 2,73 timer

9 tegn
(2 store bokstaver,
3 små bokstaver,
2 tall,
2 spesialtegn)

( 92 ) × ( 73) × ( 42 ) × 262+3 × 102 × 322 =
9.197.895.942.144.000

9 197 895 942 144 000 / 2 000 000 000 =
4 598 947,971072 sekunder =
≈ 53,23 dager

12 tegn
(3 store bokstaver,
4 små bokstaver,
3 spesialtegn,
2 tall)

( 123) × ( 94 ) × ( 53) × 263+4 × 323 × 102 =
7 295 525 784 083 496 960 000

7 295 525 784 083 496 960 000 / 2 000 000 000 =
3 647 762 892 041,74848 sekunder =
≈ 115 590,63 år

14 tegn
(4 store bokstaver,
4 små bokstaver,
3 tall,
3 spesialtegn)

( 144 ) × ( 104) × ( 63 ) × 264+4 × 103 × 323 =
28.768.690.008.569.256.345.600.000

28 768 690 008 569 256 345 600 000 / 2 000 000 000 =
14 384 345 004 284 628,1728 sekunder =
≈ 455 812 387,64 år

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