I kryptanalyse og computersikkerhed er adgangskodebrydning (på engelsk: adgangskodebrydning ) processen med at gendanne adgangskoder fra data, der er gemt eller transmitteret af et computersystem. En almindelig tilgang, kendt som et brutalt kraftangreb , er at afprøve flere potentielle adgangskoder og sammenligne deres kryptografiske hash med den kryptografiske hash af den ønskede adgangskode.
Formålet med at bryde en adgangskode er
Der er mange adgangskodebrydende software derude , de mest populære er Aircrack , Cain & Abel , John the Ripper , Ophcrack , Konboot , Hashcat (en) , Hydra , DaveGrohl (en) og ElcomSoft (en) .
Mange retsmedicinske computersoftware indeholder en adgangskodefunktion. Det meste af denne software bruger en kombination af strategier, herunder brutale kraftangreb og ordbogangreb .
Tilgængeligheden af beregningskraft og brugervenlig automatiseret adgangskodekrakningssoftware muliggør brugen af denne software af script-kiddies .
Den tid, det tager at knække et kodeord, afhænger af
De fleste metoder til krakning af adgangskoder kræver, at computeren genererer mange kandidatadgangskoder og verificerer dem en efter en. En enkel metode er brute force-angrebet , hvor en computer prøver alle mulige permutationer af tegn, indtil den finder adgangskoden.
Hurtigere metoder, såsom ordbogangreb , forsøger at reducere antallet af forsøg, der kræves for at knække et kodeord. Disse metoder vil generelt blive brugt før brute force. Forøgelse af adgangskodestyrke øger antallet af kandidatadgangskoder, der skal kontrolleres for at bryde adgangskoden, og mindsker sandsynligheden for, at adgangskoden findes i en ordbog, der knækker.
Den nødvendige tid til at knække en adgangskode ved hjælp af computerprogrammer afhænger også af antallet af adgangskoder, der kan verificeres pr. Sekund. Hvis angriberen har den kryptografiske hash af måladgangskoden, kan antallet af kontroller pr. Sekund være i størrelsesordenen en milliard, da et offlineangreb er muligt. En anden situation, hvor det er muligt hurtigt at teste et stort antal adgangskoder, er når adgangskoden bruges til at danne en kryptografisk nøgle . I dette tilfælde kan en angriber hurtigt kontrollere, om en kandidatadgangskode med succes afkoder de krypterede data. Hvis angriberen ikke har nogen af de to foregående hjælpemidler, afhænger antallet af verifikationer pr. Sekund af godkendelsessoftwaren, der begrænser den hyppighed, hvormed en adgangskode kan verificeres, eller af behandlingstid for adgangskoden, af CAPTCHA'er eller tvungne låse efter en bestemt antal mislykkede forsøg.
For nogle typer af password hashes, kan almindelige stationære teste mere end hundred millioner adgangskoder per sekund ved hjælp cracking værktøjer, der kører på en standard -processor , og milliarder af adgangskoder i sekundet. Ved hjælp af værktøjer baseret på en grafikprocessor . Antallet af potentielt testede adgangskoder pr. Sekund afhænger i høj grad af den kryptografiske hash-funktion, der bruges af systemet til at generere adgangskode-hashes. En passende hash-funktion, såsom bcrypt , er en størrelsesorden, der foretrækkes frem for en naiv funktion, såsom simpel MD5 eller SHA . Ifølge National Institute of Standards and Technology (NIST) har en adgangskode på otte tegn inklusive tal, store bogstaver, små bogstaver og symboler og eksklusive almindeligt valgte adgangskoder og sprængende ordbogord en styrke på 30 bit. Da 2 30 kun repræsenterer en milliard permutationer, vil en sådan adgangskode derfor blive brudt på få sekunder, hvis hash-funktionen er naiv. Når almindelige desktops kombineres i en krakningsindsats, som det kan gøres med botnet , øges adgangskodekraktionsevnen kraftigt. I 2002 formåede Distributed.net at finde en 64-bit RC5- nøgle på fire år, gruppere over 300.000 forskellige computere på bestemte tidspunkter og teste i gennemsnit over 12 milliarder nøgler pr. Sekund.
De GPU'er kan accelerere password sprængning med en faktor 50 til 100 i forhold til standard-processorer. Siden 2011 har kommercielle produkter hævdet muligheden for at teste op til 2.800.000.000 adgangskoder pr. Sekund på en standard stationær computer ved hjælp af en avanceret grafikprocessor. En sådan enhed kan knække en adgangskode på 10 bogstaver med en enkelt pause på en dag. Arbejdet kan spredes over mange computere for yderligere acceleration, der er proportional med antallet af tilgængelige computere.
På trods af deres muligheder er desktop-processorer langsommere med at knække adgangskoder end maskiner designet specielt til dette formål. I 1998 udviklede Electronic Frontier Foundation (EFF) en dedikeret enhed til adgangskodebrydning ved hjælp af ASIC'er i modsætning til almindelige processorer. Deres maskine, Deep Crack , brød en 56-bit DES- nøgle på 56 timer og testede over 90 milliarder nøgler i sekundet. I 2010 har Georgia Tech Research Institute (en) udviklet en metode til at bruge GPGPU til at knække adgangskoder. De opnåede resultater fik dem til at anbefale en længde på mindst 12 tegn til sikring af adgangskoder.
Den bedste metode til at forhindre adgangskodebrydning er at sikre, at angribere ikke får adgang til selv den hashede adgangskode. På Unix-operativsystemet blev f.eks. Hashede adgangskoder oprindeligt gemt i en offentligt tilgængelig / etc / passwd-fil. Af ulemper gemmes de på moderne Unix-systemer (og lignende) i adgangskodefilen shadow / etc / shadow, som kun er tilgængelig for programmer, der har rettigheder til systemadministrator ). Dette gør det vanskeligere for en ondsindet bruger at få de hashede adgangskoder, men mange password hash-filer er blevet stjålet på trods af denne beskyttelse. En anden effektiv tilgang er at knytte en stedsspecifik hemmelig nøgle til adgangskodeshashen. Dette forhindrer gendannelse af adgangskode, selvom hashværdier stjæles.
Der er andre teknikker til at få et kodeord, for eksempel: