Forskere finder sårbarhed for Bitcoin, Ethereum og Ripple Digital Signatures i defekte implementeringer
Forskere identificerede for nylig sårbarheder i kryptografiske signaturer for Bitcoin, Ethereum og Ripple, der gjorde det muligt for angribere at beregne private nøgler og følgelig stjæle enhver krypto i den tegnebog. I alt beregnede forskerne hundreder af private Bitcoin-nøgler og snesevis af Ethereum-, Ripple-, SSH- og HTTPS-private nøgler ved hjælp af denne unikke form for kryptanalytisk angreb..
I papiret Bias Nonce Sense: Gitterangreb mod svage ECDSA-signaturer i kryptovalutaer, forskere bruger en metode til at beregne private nøgler ved at analysere Bitcoin-signaturer. Forskerne var også i stand til at anvende disse teknikker til Ethereum og Ripple.
Når det er sagt, forekommer disse sårbarheder kun i kanttilfælde, hvor kode ikke implementeres korrekt af udviklere eller sandsynligvis opstod på grund af defekt hardware med flere signaturer. Forskningen understreger robustheden i de kryptografiske ordninger, der anvendes af kryptokurver, samt fremhæver vigtigheden af korrekt implementering.
Baggrund for forskning
Når kryptoindehavere foretager en transaktion, skal de oprette en kryptografisk signatur ved hjælp af en elliptisk kurve digital signaturalgoritme (ECDSA). I denne algoritme kommer softwaren med et vilkårligt nummer, der kun bruges én gang til kommunikation – dette nummer kaldes en nonce.
Det er afgørende, at softwaren underskriver hver transaktion med en anden nonce, ellers kan hackere (ret let) finde og beregne underskrivernes private nøgle. Der er endda bevis for, at hackere løbende overvåger blockchain for denne slags gentagne nonces og udtrækker penge fra kompromitterede nøgler.
Det, der er mindre kendt, er, at angribere kan beregne nøgler ud fra signaturer, der bruger forskellige, men lignende nonces. For eksempel, hvis nonces har tegn, der ligner i begyndelsen af signaturen, eller hvis nonce har tegn, der ligner i slutningen af en signatur, vil der ske en stor, dårlig forfærdelig ting.
Hvad forskerne siger
CryptoSlate kontaktede begge forfattere af papiret: Dr. Nadia Heninger er lektor i datalogi ved University of California. Joachim Breitner, er seniorforsker ved DFINITY. Ifølge Dr. Heninger blev sårbarheden beskrevet som følger:
“ECDSAs digitale signaturalgoritme kræver, at der genereres et tilfældigt tal for hver signatur, som ofte kaldes en“ nonce ”(Dette er forskelligt fra de nonces, der anvendes i kryptokurvedrift). Hvis disse tilfældige værdier, der bruges i signaturerne, ikke genereres korrekt, kan en angriber i nogle tilfælde beregne de private signaturnøgler. De typer af nonce-sårbarheder, som vi udnyttede, var implementeringer, der genererede værdier, der var meget kortere, end de skulle have været, eller værdier, der delte de fleste eller mindst betydningsfulde bits. ”
Og ved hjælp af en forhåndsmatematik kaldet gitter var de to i stand til at knække nogle af disse tegnebogadresser og finde de private nøgler:
”For nørderne i publikum giver gitteralgoritmer os mulighed for at finde små løsninger på underbegrænsede systemer med lineære ligninger. Der er en række krypotanalytiske teknikker, der bruger gitteralgoritmer som en byggesten. ”
Som anført i papiret kan enhver manglende ensartethed i genereringen af disse signatur-nonces afsløre private nøgleoplysninger. Med et tilstrækkeligt antal underskrifter kan hackere beregne private nøgler og få adgang til en brugers tegnebog og dræne dens midler.
Har Crypto-brugere brug for bekymring?
Ifølge Dr. Heninger og Breitner behøver langt størstedelen af cryptocurrency-brugere ikke bekymre sig:
“Den eneste grund til, at dette ville ske, er, hvis der er en slags fejl i den digitale signaturkode.”
Desuden betragtes underskriftsordningen, så længe udviklere bruger de rigtige teknikker og dokumenterede metoder til at sikre brugersikkerhed:
”Så vidt vi ved, er ECDSA en sikker digital signaturalgoritme, hvis den implementeres korrekt. Vi konkluderede, at disse ikke var almindelige implementeringer baseret på det faktum, at vi kun fandt nogle få tusinde sårbare signaturer ud af næsten en milliard Bitcoin-signaturer, som vi undersøgte. ”
Desuden er disse sårbarheder kun “specifikke for forskellige implementeringer. Desuden spekulerer forfatterne, at den defekte implementering muligvis kan være et resultat af et par multifaktorsikkerhedsenheder:
”Omtalelsen af multifaktorsikkerhed er specifik for tilfældet med underskrifterne, vi fandt med 64-bit nonces på Bitcoin blockchain. Næsten alle var en del af multisig-adresser, hvilket ikke er det sædvanlige tilfælde på blockchain, derfor vores gæt af kilden. Der har siden været nogle yderligere spekulation om den specifikke implementering. ”
Nu er der måder for udviklere at implementere ECDSA uden de sårbarheder, der er beskrevet i papiret, selv for hardwareenheder. Ifølge Breitner:
“De officielle blockchain-klienter får deres krypto-ret … siden 2016 bruger Bitcoin-klienten deterministiske signaturer (RFC6979) som fuldstændigt fjerner behovet for tilfældighed i processen [eliminerer muligheden for den slags angreb, der anvendes af forskerne]. Hvis du bruger ikke-standardbiblioteker, eller hvis du skriver dine egne kryptorutiner … skal du sørge for, at disse bruger RFC6979. Dette er endnu vigtigere på indlejrede enheder eller hardware-tokens, hvor en god kilde til tilfældighed måske er vanskelig at få med. ”
Rentabel for angribere?
I sidste ende er disse slags angreb ikke omkostningseffektive i betragtning af den tid, elektricitet og beregningskraft, der er nødvendig for at gennemføre dem – selv med dette nye værktøj tilføjet til deres arsenal:
”I betragtning af at angribere allerede udnytter andre kryptografiske sårbarheder til at kompromittere tegnebøger, synes det sandsynligt, at dette vil blive føjet til deres arsenal. Men hvis man skal betale for beregningstiden for at udføre beregningen, er det sandsynligvis ikke et omkostningseffektivt angreb i betragtning af de saldi, som vi fandt forbundet med sårbare nøgler. ”
I slutningen af dagen forsikrer forskningen kryptovaluta-brugere om, at kryptografien, der understreger Bitcoin og andre digitale valutaer, er sund. Med titusinder af mennesker, der gennemgår den underliggende kode for disse systemer, er det et vidnesbyrd om, at de grundlæggende sikkerhedsordninger, hvis de anvendes korrekt, stadig beskytter brugeren tilstrækkeligt—for nu.