Hakimi Wintermute përsëritet në laptop të thjeshtë në më pak se 48 orë duke shfrytëzuar të metën e profanitetit

Amber Group, një ofrues i teknologjisë blockchain, përsëriti hakimin Wintermute në më pak se 48 orë duke përdorur një laptop bazë. Një raport nga Amber Group thoshte,

“Ne përdorëm një Macbook M1 me 16 GB RAM për të parallogaritur një grup të dhënash në më pak se 10 orë… Ne përfunduam zbatimin dhe ishim në gjendje të thyenim çelësin privat të 0x0000000fe6a514a32abdcdfcc076c85243de899b në më pak se 48 orë.”

La kollitem iu atribuua adresave të kota të krijuara me mjetin Profanity, duke i lejuar përdoruesit të gjenerojnë adresa specifike ethereum me karaktere të veçanta. Në rastin e Wintermute, adresa përmbante shtatë zero kryesore. Adresat e kota lejojnë që llogaritë të kenë karaktere të ngjashme duke e bërë më të lehtë identifikimin e adresave publike në blockchain.

Një ndikim tjetër i një adrese Ethereum me disa zero kryesore është ulja e tarifave të gazit për shkak të hapësirës së reduktuar të nevojshme për të ruajtur informacionin në blockchain. Megjithatë, heqja e një elementi rastësie nga procesi kriptografik i përdorur në gjenerimin e adresës vjen me koston e sigurisë së reduktuar.

Analiza fillestare sugjeroi se do të duheshin 1,000 GPU vetëm 50 ditë për të gjeneruar çdo çelës privat të mundshëm për adresat që fillojnë me shtatë zero kryesore. Megjithatë, Amber Group tani pretendon se mund të arrihet duke përdorur vetëm një laptop të vetëm në më pak se 48 orë.

Kriptografia shpjegoi

blasfemi është një mjet për gjenerimin e adresave për ekosistemin Ethereum. Baza e kodeve mund të shkarkohet lehtësisht nga GitHub dhe është e disponueshme që nga viti 2017. Megjithatë, versioni aktual i bazës së kodeve përfshin një paralajmërim që këshillon kundër përdorimit të mjetit. Krijuesi i mjetit, Johguse, shtoi mesazhin e mëposhtëm në skedarin readme.md më 15 shtator 2022.

“Unë këshilloj fuqimisht kundër përdorimit të këtij mjeti në gjendjen e tij aktuale. Kjo depo së shpejti do të përditësohet më tej me informacion shtesë në lidhje me këtë çështje kritike.”

Më tej, binarët bazë u hoqën për të ndaluar përdoruesit që të ishin në gjendje të përpilonin bazën e kodeve "për të parandaluar përdorimin e mëtejshëm të pasigurt të këtij mjeti".

Profanity përdor "fuqinë e GPU-së me OpenCL përmes një algoritmi të thjeshtë" për të gjeneruar çelësa privatë dhe publikë të Ethereum derisa të gjejë një adresë që përputhet me rregullat e vendosura nga përdoruesi. Për shembull, nëse një përdorues dëshiron të krijojë një adresë Ethereum që përfundon me 'AAA', ajo do të vazhdojë të funksionojë derisa të gjenerojë një adresë me këto karaktere si prapashtesë.

Kur krijohet një adresë që nuk përputhet me kushtet e detajuara në grupin e rregullave, Profanity "shton 1 në çelësin privat dhe nxjerr një adresë të re Ethereum derisa të gjejë atë që përputhet me rregullat".

Adresat Ethereum zakonisht gjenerohen në nivel lokal duke përdorur kriptografinë e kurbës eliptike. Kur krijoni një adresë Ethereum, nuk ka llogaritje për të kontrolluar nëse çelësi privat është përdorur në të kaluarën për një adresë tjetër. Sidoqoftë, kjo është për shkak të numrit të madh të adresave të mundshme të Ethereum.

Kjo video shpjegon madhësinë e vërtetë të Kriptimi 256bit përdoret në kriptografinë e Ethereum. Një krahasim i thjeshtë mund të bëhet edhe në atë që ka afërsisht 2^76 kokrra rëre në botë por 2^160 adresa të mundshme Ethereum.

Megjithatë, kur ndonjë karakter i adresave të Ethereum është i paracaktuar, llogaritja për të gjeneruar çelësin privat bëhet dukshëm më e drejtpërdrejtë dhe numri i adresave të mundshme zvogëlohet në mënyrë dramatike.

Shfrytëzimi

Amber Grouped shpjegoi se defekti i metodës Profanity vjen nga përdorimi i një seed 32-bit për të gjeneruar adresa.

“Për të gjeneruar një çelës privat të rastësishëm, Profanity fillimisht përdor pajisjen e rastësishme për të gjeneruar një farë. Por, për fat të keq, fara është 32-bit, e cila nuk mund të përdoret drejtpërdrejt si një çelës privat.”

Fara 32-bit ushqehet përmes një gjeneratori pseudo-random numrash (PRNG) që përdor një funksion përcaktues. Kjo metodë PRNG rezulton në një mënyrë të drejtpërdrejtë për të përcaktuar të gjitha farat e zbatueshme të çelësit publik të përdorur brenda Profanity.

"Meqenëse ka vetëm 2^32 çifte të mundshme të çelësave fillestarë (d_0,0, Q_0,0) dhe përsëritja në çdo raund është e kthyeshme, është e mundur të thyhet çelësi privat nga çdo çelës publik i krijuar nga Profanity."

Metoda e përdorur nga Amber Group ishte të merrte çelësin publik të adresës, të llogaritte paraprakisht çelësat publikë të mundshëm të profanitetit, të llogaritte çelësat publikë duke përdorur OpenCL, të krahasonte çelësat publikë të llogaritur dhe më pas të rindërtoje çelësin privat pasi të gjendet një përputhje.

Për shkak të thjeshtësisë së metodës, Amber Group rekomandon që "fondet tuaja nuk janë të sigurta nëse adresa juaj është krijuar nga Profanity".

tha Amber Group CryptoSlate se, në lidhje me faktin nëse nevojitet një algoritëm më i mirë kriptografik, "përgjigja është padyshim po... industria mund të shohë se sa i prekshëm është ky lloj dizajni."

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