En regnbuetabell var en ressurs som ble brukt til å hacke kryptografiske hash-funksjoner for å oppdage klartekstpassord ved hjelp av en forhåndsberegnet autentiseringsdatabase . Rainbow-tabellløsninger bruker en algoritme for å slå opp informasjonen som trengs for å raskt knekke passord-hasher. Selv om moderne passordsalting- og hashingalgoritmer i stor grad har ugyldiggjort regnbuetabellen, finnes det mange applikasjoner som ikke bruker slike lett tilgjengelige verktøy og i stedet er avhengige av enkelt hashede passord på grunn av latskap eller uoppmerksomhet på viktige detaljer.
Ideen om å bruke regnbuetabell eller andre hash-knekkingsmetoder kommer fra bruken av passord-hasher i autentiseringsdatabaser. Ethvert system som bruker passord for autentisering må lagre disse passordene i en eller annen form. Det verste tilfellet er at applikasjonsutvikleren lagrer passordene som ren tekst, noe som gjør alle registrerte brukeres passord ekstremt sårbare for uautorisert tilgang fra hackere eller til og med interne systemadministratorer. Selv om denne dårlige praksisen har vært kjent i flere tiår, er den fortsatt vanlig i nettbaserte applikasjoner.
En litt, men muligens meningsløs ting noen programmerere gjør, er å utføre en enkelt hash-beregning av passordet. Det finnes vanlige hash-algoritmer som konverterer passord til det som kan virke som tilfeldige tegnstrenger, men som i virkeligheten er veldig enkle å reversere med en regnbuetabell. Når du autentiserer deg i et system, hashes passordet du skriver inn ved hjelp av samme algoritme som ble brukt til å lagre passordet i passorddatabasen. Hvis hashene samsvarer, er du autentisert. Det er her en regnbuetabell kommer inn i bildet.
En regnbuetabell lagrer alle enveis-hasher av klartekstpassord fra 1 tegn i lengde til 7 eller kanskje 8 tegn i lengde. (En regnbuetabell på 8 tegn for en enkel hashingalgoritme vil ta opptil 32 petabyte med databaseplass å lagre!). Når en hacker stjeler en hurtigbuffer med enkle passord-hasher, kan de slå opp hash-verdien i regnbuetabellen for å finne klartekstpassordet.
Med fremveksten av passordsalting på opptil 32 tegn, finnes det ikke Rainbow-tabeller for å utføre slike oppslag (Kilde: Rainbow Tables are Dead ). Enda viktigere er det at mange standard binærfiler utfører iterativ hashing av passord. Dette er når et saltet passord hashes om og om igjen, et visst antall ganger, og den endelige hashverdien, for eksempel den 764. hashen av det opprinnelig saltede passordet, lagres i databasen for fremtidig sammenligning ved autentisering i applikasjonen. Rainbow-tabeller kan ikke knekke disse passordene.
Når hackere stjeler en buffer med passord, kan de raskt finne ut om passordene ble saltet og hashet N antall ganger, ved å bruke en regnbuetabell for å slå opp de 100 beste passordene. Hvis de finner en match, kan de jobbe bakover for å finne ut om programmererne var late og ikke saltet passordene eller hashet dem iterativt, eller begge deler. Altfor ofte har utviklere hoppet over disse viktige trinnene, slik at hackere nå får tak i passordene dine ved å reversere dem i en enkel regnbuetabell.
Regnbuetabellene er en rask og effektiv måte å knekke usaltede og enkelt-hashede passord på. Hvis du utvikler en applikasjon i din SMB, sørg for å spørre hvordan passordene lagres. Spør utvikleren hvor stor SALT-filen deres er (8 er liten, 32 tegn er tilstrekkelig), og spør deretter hvor mange iterasjoner de gjør på passordene før de lagrer den hashede verdien. LastPass hasher passordene sine over 100,000 1000 ganger på hovedpassordet. Det kan være overdrevent for din organisasjon, men noen hundre til tusenvis bør være nødvendig.
Vanlige saltings- og hashingfunksjoner inkluderer: « Argon2 , scrypt , bcrypt og PBKDF2 ».
Uansett hva du gjør, bør du behandle dette som et kritisk krav i applikasjonsutviklingen din. Hvis du ikke kan bygge inn SSO i passordskjemaet ditt, og du må lagre passord-hasher, må du salt og iterativt hashe passorddatabasen din ved hjelp av verktøyene som er nevnt i denne artikkelen.
kilder:
Ytterligere lesing:
Slik sikrer du nettstedet ditt mot datainnbrudd
Kryptering, hashing og salting: hva er forskjellen?
Relaterte vilkår:
Oppdag og del de nyeste trendene, tipsene og beste praksisene innen cybersikkerhet – i tillegg til nye trusler du bør se opp for.
Forfatter: Katie Boquetti | Lederartikkel: Craig Taylor Lederartikkel av Craig Taylor: Vi har visst det en stund her...
Les mer
Forfatter: Katie Boquetti | Lederartikkel: Craig Taylor Lederartikkel av Craig Taylor: En CAPTCHA skal teste om...
Les merFå et skarpere blikk på menneskelige risikoer, med den positive tilnærmingen som slår tradisjonell phishing-testing.
