Wintermute-hack replikeret på en simpel bærbar computer på under 48 timer ved at udnytte ukvemsord

Amber Group, en udbyder af blockchain-teknologi, replikerede Wintermute-hacket på mindre end 48 timer ved hjælp af en grundlæggende bærbar computer. En rapport fra Amber-gruppen sagde,

"Vi brugte en Macbook M1 med 16 GB RAM til at forudberegne et datasæt på mindre end 10 timer… Vi afsluttede implementeringen og var i stand til at knække den private nøgle af 0x0000000fe6a514a32abdcdfcc076c85243de899b på mindre end 48 timer."

hack blev tilskrevet forfængelighedsadresser oprettet med Profanity-værktøjet, hvilket giver brugerne mulighed for at generere specifikke ethereum-adresser med bestemte tegn. I tilfældet med Wintermute indeholdt adressen syv foranstillede nuller. Vanity-adresser tillader konti at have lignende tegn, hvilket gør det nemmere at identificere de offentlige adresser på blockchain.

En anden effekt af en Ethereum-adresse med flere foranstillede nuller er en reduktion i gasgebyrer på grund af den reducerede plads, der er nødvendig for at gemme informationen på blockchain. At fjerne et element af tilfældighed fra den kryptografiske proces, der bruges til at generere adressen, kommer dog på bekostning af reduceret sikkerhed.

Indledende analyse antydede, at det ville tage 1,000 GPU'er kun 50 dage at generere alle mulige private nøgler til adresser, der starter med syv foranstillede nuller. Amber Group hævder dog nu, at det kan opnås med kun en enkelt bærbar computer på under 48 timer.

Kryptografien forklaret

blasfemi er et adressegenereringsværktøj til Ethereum-økosystemet. Kodebasen kan nemt downloades fra GitHub og har været tilgængelig siden 2017. Den nuværende kodebaseversion indeholder dog en advarsel, der fraråder brugen af ​​værktøjet. Værktøjets skaber, Johguse, føjede følgende besked til filen readme.md den 15. september 2022.

"Jeg fraråder på det kraftigste at bruge dette værktøj i dets nuværende tilstand. Dette lager vil snart blive yderligere opdateret med yderligere oplysninger om dette kritiske problem."

Ydermere blev kernebinære filer fjernet for at forhindre brugere i at kunne kompilere kodebasen "for at forhindre yderligere usikker brug af dette værktøj."

Ukvemsordet bruger lokal "GPU-kraft med OpenCL gennem en simpel algoritme" til at generere Ethereums private og offentlige nøgler, indtil den finder en adresse, der matcher de regler, som brugeren har sat. For eksempel, hvis en bruger ønsker at oprette en Ethereum-adresse, der slutter på 'AAA', vil den fortsætte med at fungere, indtil den genererer en adresse med disse tegn som suffiks.

Når der genereres en adresse, der ikke matcher betingelserne beskrevet i regelsættet, "føjer profanity 1 til den private nøgle og udleder en ny Ethereum-adresse, indtil den finder den, der matcher reglerne."

Ethereum-adresser genereres normalt lokalt ved hjælp af elliptisk kurvekryptografi. Når du genererer en Ethereum-adresse, er der ingen beregning for at kontrollere, om den private nøgle tidligere er blevet brugt til en anden adresse. Dette skyldes dog det store antal mulige Ethereum-adresser.

Denne video forklarer den sande størrelse af 256 bit kryptering bruges i Ethereums kryptografi. En simpel sammenligning kan også laves i, at der er groft 2^76 sandkorn i verden, men 2^160 mulige Ethereum-adresser.

Men når nogen af ​​tegnene i Ethereum-adresserne er forudbestemt, bliver beregningen for at generere den private nøgle betydeligt mere ligetil, og antallet af mulige adresser reduceres dramatisk.

Udnyttelsen

Amber Grouped forklarede, at profanity-metodens fejl kommer fra at bruge et 32-bit frø til at generere adresser.

"For at generere en tilfældig privat nøgle bruger Profanity først den tilfældige enhed til at generere et frø. Men desværre er frøet 32-bit, som ikke kan bruges som en privat nøgle direkte."

32-bit frøet føres gennem en pseudo-tilfældig talgenerator (PRNG), der bruger en deterministisk funktion. Denne PRNG-metode resulterer i en ligetil måde at bestemme alle levedygtige offentlige nøglefrø, der bruges i bandeord.

"Da der kun er 2^32 mulige indledende nøglepar (d_0,0, Q_0,0) og iterationen på hver runde er reversibel, er det muligt at knække den private nøgle fra enhver offentlig nøgle genereret af bandeord."

Den metode, Amber Group brugte, var at erhverve den offentlige nøgle til adressen, forudberegne de mulige offentlige nøgler, beregne de offentlige nøgler ved hjælp af OpenCL, sammenligne de beregnede offentlige nøgler og derefter rekonstruere den private nøgle, når der er fundet et match.

På grund af metodens enkelhed anbefaler Amber Group, at "dine penge ikke er sikre, hvis din adresse blev genereret af bandeord."

Amber Group fortalte CryptoSlate at i forhold til, om der er behov for en bedre kryptografisk algoritme, "er svaret naturligvis ja ... industrien kan se, hvor sårbar denne type design er."

Kilde: https://cryptoslate.com/wintermute-hack-replicated-on-simple-laptop-in-under-48-hours-by-exploiting-profanity-flaw/