Gå til innhold

Knekker Wifi-kryptering med GPU


Anbefalte innlegg

Dette viser bare nok en gang at GPUer er ekstremt mye kraftigere enn CPUer på oppgaver som i stro grad er gjentagende algoritmer. Grunnen er at moderne GPUer har opp til 800 beregningsmotorer (shadere) mens CPUer bare har opp mot 4 (kjerner). Selv om GPUene går på lavere klokkefrekvenser så har de altså så mange flere "hjerner" å jobbe med at de knuser CPUer på slike oppgaver. CPU har til gjengjeld mye smartere "hjerner" som kan gjøre mer uforutsigbare og ikke parallelliserbare instruksjonsmikser veldig bra. Der kommer GPUer til kort. GPUer er litt "dumme slaver" som elsker gjentagende enkle oppgaver i store mengder.

Uh, takk!. Nå skjønte jeg faktisk en hel del mer. På hva som er forskjell liksom :)

Lenke til kommentar
Videoannonse
Annonse
Hmm, har alltid lurt på hvorfor det ikke er en sperre på hvor lang tid man har på å prøve seg fram fra et passord til et annet. F.eks 1 sekund mellom hvert forsøk. Det er jo idiotisk at man kan kjøre på med ubegrenset antall forsøk i sekundet??

Her må vi skille mellom online og offline attacks.

 

Online: F.eks. servern min som kjører OpenSSH-server, så kan folk prøve å bryte seg inn ved å teste ut haugevis med passord (brute-force), selvfølgelig automatisk ved hjelp av et egnet dataprogram. Men for hvert eneste passord må de sende en forespørsel til servern min og vente på svar. Dette tar tid, slik at crackingen blir forsinket. I tillegg kan jeg sette begrensninger på servern min som f.eks. blocker en IP-adresse som har prøvd feil passord X antall ganger. En god beskyttelse mot brute-force attacks :)

 

Offline: Her slipper man denne begrensningen fordi man selv har tilgang på de krypterte dataene. F.eks. hvis man har en kryptert .zip fil eller noe annet. Da er det ingen som kan legge hindringer i antall passordforsøk, og eneste begrensende faktor er hvor mye datakraft du har tilgang på. Derfor skalerer det jo på en helt annen måte, og ved hjelp av GPU, botnets osv. kan man teste ut et absurd antall passord hvert sekund.

Endret av Langbein
Lenke til kommentar

Bruce Schneier har selvsagt rett, men 100 ganger økt prosesseringskraft gir en liten forskyvning i hvor sterke passord som trengs. Nærmere bestemt trengs det 1-2 tegn lengre passord som kompensasjon for at det blir lettere å knekke.

 

Litt forenklet fremstilt:

13 tegn: trygt -> trygt

12 tegn: trygt -> trygt

11 tegn: trygt -> middels trygt

10 tegn: middels trygt -> utrygt

9 tegn: utrygt -> utrygt

8 tegn: utrygt -> utrygt

 

Legg til et botnet på 50-100 maskiner så dyttes trygghetsgrensa ytterligere et tegn oppover.

Lenke til kommentar

Det fins helt sikkert en del folk der ute i de tusen hjem som kan være utsatt. Bruker man f.eks. navn på bikkja eller favoritt-fotballaget sitt som passphrase så ber man om bråk :p

 

Men det fine akkurat med WPA-passord er jo at det ikke er et passord man skriver inn særlig ofte, i motsetning til mange andre passord vi bruker opptil flere ganger daglig (brukerpassord på PC, innlogging til nettsider...).

 

Eneste gang jeg skriver inn WPA-passordet er når jeg har satt opp en ny PC/mobil/etc., og dermed bør man kunne klare å skrive et litt lengre passord enn normalt. Selv bruker jeg WPA2 med ~20 tegn, og sover trygt om natta.

Lenke til kommentar

Det er STERKT undervurdert programvare de har klart å sette sammen.

 

Intel Code 2 Duo E6600 - kan prøve ut ca. 4.7 millioner passord i sekundet.

nVidia 8800 GT tar 210 millioner passord i sekundet.

 

8800 GT har "topspeed" på 504.0 Gigaflops.

Core 2 Duo E6600 - har top speed på 38 Gigaflops

 

Men så går det helle ikke kun på gigaflops men på GPU/CPU arkitektur. F.eks. GPU trenger ca. 2 gigaflop for å prøve ut 1 million MD5 kombinasjoner i sekundet. Mens CPU trenger bort i mot 8 gigaflop for å utføre samme oppgave.

 

Dersom vi ser kun på GPU - ved å kjøpe 4 x GTX 280 kort kan man få ca. 4 teraflops.

Hva gir det oss? Mulighet for å prøve ut (bruteforce) ca. 2000 millioner MD5 kombinasjoner i sekundet!

 

Det som tar 15 år med E6600 CPU tar knapt 4 måneder med 4 x GTX 280.

Og som det har vært nevnt før - kjøpe du 4 maskiner med 4 x GTX 280 i hver - er oppgaven klart på 1 mnd. Som "egentlig" beregnet til å ta 15 år!..

 

Og her tar jeg ikke i betraktning eskalering i ytelse når det blir destribuert på 16 GPU.

Og 4 maskiner med 4 stk GTX 280 i hver vil ikke koste deg mer enn 100.000,- kr!

Endret av GCardinal
Lenke til kommentar

Ønsker bare å legge litt til ang. sikkerheten på WPA og andre lignende systemer, med mindre du ikke har utrolig mektige fiender (og finnes det nesten ingen løsninger som gir god sikkerhet) som for en eller annen grunn finner ut at det å knekke WPA-nøkkelen din er et bedre valg for å få tak i informasjon enn andre mer utprøvde metoder, så er det lite å frykte når det kommer til sikkerheten på WPA beskyttede nettverk. Nå skal det sies at om du har informasjon som er kan være en fare for nasjonens sikkerhet eller for den saks skyld verdens sikkerhet så er det nok ikke en lur ide å basere seg på WPA, da burde en heller vurdere noen av de bedre VPN løsningene tilgjengelige i dag, men for de fleste er WPA sikkert nok. Grunnen til det er at WPA nøkkelen saltes med SSIDen på nettverket hvilket innebærer at et suksessfull angrep på ditt nettverk er bare virkende så lenge alle verdier forblir like. Skulle du bytte et tegn i nøkkelen eller SSIDen så må angriperen startet helt fra nytt av og hvis du i tillegg har en ganske lang nøkkel og SSID så vil det ta lang tid før angriperen kan kompromisser nettverket ditt. Videre så betyr dette at time-memory tradeoff metoder ikke kan brukes så et angrep på ditt nettverk vil bare være myntet på ditt nettverk og ubrukelig på andre nettverk med mindre de ikke kjører nøyaktig samme SSID og WPA-nøkkel. Derfor kan vi konkludere med at en angriper må ha tilgang til ressurser slik som maskinvare med god ytelse, være i området for å fange opp SSIDen du bruker (skjult SSID gjør det litt vanskeligere men ikke mye) og til sist så må vedkommende ha tid til å vente siden et slikt angrep vil ta tid. Dette er neppe noe verdt å gjøre med mindre ikke viktig informasjon kan hentes ut (også må en huske at informasjonen må være gyldig på det tidspunktet en har greid å komme seg inn) og har angriperen slike ressurser så har vedkommende nok andre ressurser også som gjør at informasjonen kan hentes ut på andre mindre tidskrevende metoder. Skulle i tillegg eieren av nettverket være av den typen som endrer nettverksnøkkelen eller SSIDen ofte så vil angriperen ha en enda større utfordring foran seg. Nå sier jeg ikke at WPA er veldig sikker, men sikker nok for de fleste om visse forhåndsregler tas, slik som lang SSID og WPA-nøkkel, regelmessig endring av nøkkelen eller SSIDen og til sist (og dette er kanskje den vanligste feilen som gjøres i dag) er det viktig å huske å endre nøkkelen og SSIDen som kommer ferdig konfigurert med visse enheter, selv om de skulle være unike for vær enhet så er algoritmen brukt for å generere dem som oftest kjent noe som gjør jobben til en angriper mye lettere og øker sannsynligheten for et suksessfullt angrep betydelig (i visse tilfeller kan en angriper "gjette" seg fram til bare ca 100 sannsynlig nøkler og det er fort gjort å finne ut hvilken av dem er riktig). Selv bruker jeg WPA og VPN over det trådløse nettverket hjemme :p

 

Når det gjelder online vs offline angrep så har Lanbein rett, online angrep er både lettere å oppdage og lettere å stoppe, men dette innebærer ikke at offline angrep da ikke har begrensinger også, det hele kommer an på hvordan sikkerheten er implementert, key strengthening som vi kan finne brukt både i implementeringen av kryptering i RAR filer og i 7z filer forhindrer at hastigheten blir for høy under brute force angrep. Det er slike ting som gjør sikkerheten bedre i RAR og 7z enn i andre lignende formater. Istedenfor å forklare mer om key strengthening så kan en lese en enkel forklaring her http://en.wikipedia.org/wiki/Key_strengthening

 

Sist når det gjelder å "knekke" en enveis-sjekksum slik som MD5 eller lignende så fungerer det på den måten at du genererer alle mulige kombinasjoner av tall, tegn og små og store bokstaver i lengre og lengre lengder inntil du finner en kombinasjon som genererer nøyaktig samme sjekksum som den du har tilgjengelig, på den måten har du funnet tilbake til det som genererte den sjekksummen noe som da ikke egentlig ikke skal være meningen da enveis-sjekksum funksjoner brukes til å autentisere en person eller gjenstand. Men nå skal det sies at å bruke et program slik som det i artikkelen til å "knekke" en slik sjekksum ville vært dumt da det er bortkastet tid, tar lang tid selv ved bruk av GPU og du må startet på nytt hver gang. En bedre løsning er å bruke en time-memory tradeoff metode slik som en rainbow-tabell som da er en database med ferdig genererte kombinasjoner og de tilsvarende sjekksummene, da trenger du å bruke minimalt av datakraft for å finne fram til kombinasjonen som tilsvarer sjekksummen og har du sjekksummen i databasen tar det bare et par min før du finner hva den tilsvarer. Den eneste ulempen er at en slik database tar utrolig mye plass opptil flere terabytes selv om du ikke har alle mulige kombinasjoner (noe som er lite sannsynlig). Men om valget ligger mellom å vente en del før du finner sjekksummen, å måtte ha flere GPUer som må samkjøres samtidig som du må starte fra nytt for hver sjekksum eller å bare ha en database som kan brukes av en eller flere PCer samtidig, gir svar ganske så fort uansett hvor mange sjekksummer du prøver deg på, men krever at du har mye tilgjengelig plass så tror jeg svaret er enkelt ;) Den beste løsningen blir jo da å bruke programmet i artikkelen til å generere en slik database da det vanligvis tar lang tid å generere noe slikt, men der igjen kan slike databaser kjøpes eller lastes ned noe som er enda raskere så det spørs om ikke det også er litt bortkastet. Videre så kan nesten alle enveis-sjekksummer saltes og da kan ikke denne metoden brukes lenger, da kommer du i en lignende situasjon som den som for tiden er med WPA.

 

Sist vil jeg legge til at jeg er klar over at jeg har forenklet visse ting men det er fordi jeg prøvde å begrense lengden av denne posten, om du merker dette så burde du forstå at denne posten ikke er myntet på deg :p Videre så tar jeg gjerne i mot alt tilbakemelding om noe her er feil, forhåpentligvis er jeg ikke helt på jorde nå men mye du vet aldri, ting forandrer seg så fort i dataverden.

Lenke til kommentar
Hvorfor bruke programvare til 5000,- bare for å finne passordet til forskjellige filer. :no:

 

Å komme seg inn i et nettverk som er beskyttet med WEP,WPA,WPA2 Trenger man bare XP :new_woot: og 1min til :whistle: så noen sek/minuter til nettverksaddressen er okey :!:

 

Du mener du kan knekke et WPA2-kryptert nett i løpet abv ett min? Vennligst utdyp.

 

AtW

Lenke til kommentar
Med mitt WPA passord med 16 tegn, finnes det 8 * 10^28 kombinasjoner... så lykke til å knekke det. Dersom programmet sjekker en million kombinasjoner i sekundet, vil det ta 2.5 * 10^15 år å sjekke alle....

For å presisere matematikken litt:

Det er 26 tegn fra a-z (antar man ikke bruker norske tegn), samt 26 fra A-Z, 10 fra 0-9 og 15-16 spesialtegn, la oss si 78 mulige tegn totalt.

Med andre ord, du har 78 mulige tegn på første tegn i passord, 78 på andre o.s.v.

Et passord med 16 tegn gir da 78^16 (1877213388752445800995314794496) mulige passord.

Har du et program som klarer å gjette 1 milliard passord pr sekund, så vil fortsatt ta ca 60000 milliarder år å gå igjennom alle mulige kombinasjoner.

Med 8 tegn i passordet, tar det samme ca 16 dager. 10 tegn gir 265 år.

 

Har man 10 tilfeldige tegn eller mer i passordet, så er det ingen grunn til å sove dårlig om natten :)

Lenke til kommentar

Dette blir litt OT, men for en stund siden ble en Gmail-konto (til en som jobbet i Net Sherrif eller noe sånt) cracket med brute force. Er det noe som fortsatt er mulig på Gmail, eller har Google gjort noe med det? Synes det er merkelig at de ikke har begrensninger på antall forsøk pr. sekund eller andre liknende tiltak som vil hindre bruk av brute force. Nå kan jeg lite om kryptering og passord men jeg vil tro det mulig og relativt enkelt å gjennomføre?

Lenke til kommentar
Nå undervurderer du både GPU og programmererne kraftig. En geforce GTX 280 har en teoretisk beregnignskapasitet på 933 Gigaflops. Det vil si 933000 millioner beregninger per sekund. Selv om vi tar høyde for svært ineffektiv utnyttelse av kraften i programmet (10% utnyttelse) så vil det gå svært mye raskere enn du anslår. Nærmere bestemt 39 minutter i stedet for 7 år. Dersom vi beregner en god utnyttelse på 70% av GPU-kapasiteten så vil det ta under 8 minutter å kjøre gjennom alle kombinasjoner. Med uflaks tar det 8 minutter før man finner koden, med flaks finner man den med en gang. I gjennomsnitt litt under 4 minutter.

 

Men du kan ta det med ro selv siden ditt 16-tegns passord fortsatt er meget trygt.

10% utnyttelse vil vel i denne settingen si at du kun trenger 10 assemblyinstruksjoner for å utføre en dekryptering av en AES blokk, samt å sammenlikne resultatet med noe kjent for å se om nøkkelen er riktig. Når bare AES alene er 10-14 runder med xor, substitusjon, rotasjon og multiplikasjon, lurer jeg på hvordan det skal gå til. For ikke å nevne "70% utnyttelse".

Lenke til kommentar
Bruce Schneier har selvsagt rett, men 100 ganger økt prosesseringskraft gir en liten forskyvning i hvor sterke passord som trengs. Nærmere bestemt trengs det 1-2 tegn lengre passord som kompensasjon for at det blir lettere å knekke.

 

Litt forenklet fremstilt:

13 tegn: trygt -> trygt

12 tegn: trygt -> trygt

11 tegn: trygt -> middels trygt

10 tegn: middels trygt -> utrygt

9 tegn: utrygt -> utrygt

8 tegn: utrygt -> utrygt

 

Legg til et botnet på 50-100 maskiner så dyttes trygghetsgrensa ytterligere et tegn oppover.

 

Riktig !

 

Men, Nvidia har mer på lager...

Noen vet kanskje hvordan GTX280 blir til 260 osv..

Men 280 er ett biprodukt av en enda bedre GPU.

 

La oss si at du ønsker å holde en 'cracked' nøkkel for deg selv...

La oss samtidig si at du har penger nok - etter som dine 'kunder' liker informasjonen du kan tilby.

 

2 stk 42U Rack's

80 stk Tesla S1070 (NV_DS_Tesla_S1070_US_Jun08_NV_LR_Final.pdf)

Nok maskiner til å terminere alle PCI slottene.

og en Elcomsoft agent på hver maskin.

 

Legg merke til at hver S1070 GPU kjører på 1,4 Ghz og minnet på 800Mhz.

(tror det er ca dobbelt så mye som GTX280)

Hver S1070 har 4 GPU'e

 

 

80(10.000$ per stk) x 4 = 320 GPU'er a 240 computing cores per stk = 76800 computing cores

Da har du:

107.520.000.000.000 transistorer.

0,35 Petaflops 'processing power' til "mørk kjeller" bruk

 

Elcomsofts programvare knytter alle disse kjernene sammen.

Det er DET som er den egentlige nyheten.

Det er også ett av de første grid produktene for gutte rommet.

 

Hvor mange tegn som trengs for å beskytte seg mot dette vet vi

ikke før mange nok kjerner har kjørt i grid og eventuelt klart å knekke

en god nok seedet nøkkel.

 

Det er det andre viktige poenget her - Pre Shared Key.

De fleste bedrifter bruker EAP, ikke pre shared key.

 

Men hvor mange bedrifter tror dere det er der ute som har surret sammen

ett 3-4 AP trådløs nett, tastet inn windows administrator passordet som

pre shared key og kanskje sluttet i jobben for ett eller to år siden...

 

Og ikke tro at en ordtak som du kan huske er bra nok !

Setninger er ord - ord er dictionaries - internett aviser er en

glimrende kilde til 45-63 tegns ord sammensettninger som kan

brukes til å bygge brute force lister.

 

Skal du være trygg så skal det se ut noe slikt som:

 

!x]ZH\42$>n,j=v)mW7FLVHDerXI%i^6_ZQm?X-pUA.32z<d?QB2ei,pmZeHFvm

 

Q73AMnv^l:,zd6#2VoR:-@U'tlpr/JR{nWa2bCbRFV!iUWc^7J+6%yD3RSuws#:

 

e)GPSrr:v!+Z`y$og1<X'KFY0i7ta/j;_G]OA7:\*brJ{7mYxn)VG<+p2@1D#m!

 

-Dz7>ozh!om,mjuoDS,qri&nC"OEEBTuAMy"}z8*<e>gv&@vK9q!<ctZyl>0

 

Men nå har jeg postet disse på internett så du kan ikke bruke dem ;)

 

 

Og en ting til.. Alt som kan sniffes nå kan sikkert crackes om 5 år

 

NV_DS_Tesla_S1070_US_Jun08_NV_LR_Final.pdf

Endret av Spidern
Lenke til kommentar
Litt forenklet fremstilt:

13 tegn: trygt -> trygt

12 tegn: trygt -> trygt

11 tegn: trygt -> middels trygt

10 tegn: middels trygt -> utrygt

9 tegn: utrygt -> utrygt

8 tegn: utrygt -> utrygt

Et enkelt engelsk ord må også sies å være svært usikkert, nesten uavhengig av lengde, da dictionary angrep også er relativt vanlig.

 

Men uansett hvor kraftig hardware man får så tror jeg nok ikke at jeg ville satset på ren brute-force hvis jeg utviklet et slikt program. Det første jeg ville gjort var nok å ha en funksjon som rapporterte alle knekte passord opp til serveren slik at man kan kjøre statistikk på passordene og dermed kunne tilpasse algoritmen sin etter det. Selv uten tilgang til slike data vil jeg tro at de fleste velger et passord som inneholder et ord (slik at det skal være mulig å huske), kanskje til og med et substantiv. Og sannsynligvis er få passord under si 5 bokstaver (fordi de fleste passordregistratorer krever en viss minimumslengde på passordene sine).

Endret av NorthWave
Lenke til kommentar
ati har rundt 800 i 4850 4870 2 i cf 1600 (4870x2) 4870x2 CFX = 3200 shadere og 4.8 terraflops.

kan sikkert clocke bitte litt så har man 5 terraflops.. woooh!

Nå er du på så tynn is at det er til å le av! :D

 

nVIDIA GTX 280 har som du sier 240 kjerner, AMD sine kort har på papiret 800, men de er organisert på en helt annen måte. Det er 160 "kjerner" som kan gjøre 5 operasjoner per klokke. nVIDIA sine kjerner gjør en operasjon per klokke.

 

Det er veldig komplisert å utnytte AMD sin arkitektur fullt ut desverre. Teoretiske nummere er desverre ikke verdt stort i et GPGPU scenario.

 

surt det bare er til nvidia kort da :p ati har jo mere rå shader kraft :p

Desverre så er AMD sine SDK for stream computing ikke noe å skrive hjem om.

 

ati stream computing og nvidia cuda sku vært slått sammen til en felles standard å slåss mot intels larabee som kommer en eller anna gang :p

Vel... AMD står fritt til å implementere CUDA, helt uten kostnad... :)

Lenke til kommentar
Hvorfor bruke programvare til 5000,- bare for å finne passordet til forskjellige filer. :no:

 

Å komme seg inn i et nettverk som er beskyttet med WEP,WPA,WPA2 Trenger man bare XP :new_woot: og 1min til :whistle: så noen sek/minuter til nettverksaddressen er okey :!:

 

Du mener du kan knekke et WPA2-kryptert nett i løpet abv ett min? Vennligst utdyp.

 

AtW

 

jepp, klarer faktisk det på noen minuter :p WEP,WPA,WPA2 ingen problemer å komme seg inn i nettverket, men blir det brukt VPN eller server som kontrollerer nettet får man ikke internet tilgang.

Kan si det sånn at jeg bruker et hull i XP, er ikke mange som veit om det. og bra er det!

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...