Wintermute hack replikovaný na jednoduchém notebooku za méně než 48 hodin využitím chyby vulgárních výrazů

Amber Group, poskytovatel technologie blockchain, replikoval hack Wintermute za méně než 48 hodin pomocí základního notebooku. Zpráva Amber Group uvedla,

„Použili jsme Macbook M1 s 16 GB RAM k předvýpočtu datové sady za méně než 10 hodin… Dokončili jsme implementaci a podařilo se nám prolomit soukromý klíč 0x0000000fe6a514a32abdcdfcc076c85243de899b za méně než 48 hodin.“

Projekt hack byla připsána marnostným adresám vytvořeným pomocí nástroje Profanity, který uživatelům umožňuje generovat specifické ethereum adresy s konkrétními znaky. V případě Wintermute obsahovala adresa sedm úvodních nul. Vanity adresy umožňují, aby účty měly podobné znaky, což usnadňuje identifikaci veřejných adres na blockchainu.

Dalším dopadem adresy Ethereum s několika úvodními nulami je snížení poplatků za plyn kvůli zmenšenému prostoru potřebnému k uložení informací na blockchainu. Odstranění prvku náhodnosti z kryptografického procesu používaného při generování adresy však přichází za cenu snížené bezpečnosti.

Prvotní analýza naznačovala, že vygenerování všech možných soukromých klíčů pro adresy začínající sedmi nulami by trvalo 1,000 50 GPU pouhých 48 dní. Amber Group však nyní tvrdí, že toho lze dosáhnout pomocí jediného notebooku za méně než XNUMX hodin.

Vysvětlení kryptografie

Rouhavost je nástroj pro generování adres pro ekosystém Ethereum. Codebase lze snadno stáhnout z GitHubu a je k dispozici od roku 2017. Aktuální verze codebase však obsahuje varování před používáním tohoto nástroje. tvůrce nástroje, Johguse, přidal 15. září 2022 do souboru readme.md následující zprávu.

„Důrazně nedoporučuji používat tento nástroj v jeho současném stavu. Toto úložiště bude brzy dále aktualizováno o další informace týkající se tohoto kritického problému.“

Dále byly odstraněny základní binární soubory, aby uživatelé nemohli kompilovat kódovou základnu, „aby se zabránilo dalšímu nebezpečnému používání tohoto nástroje“.

Profanity používá místní „výkon GPU s OpenCL prostřednictvím jednoduchého algoritmu“ ke generování soukromých a veřejných klíčů Ethereum, dokud nenajde adresu, která odpovídá pravidlům nastaveným uživatelem. Pokud si uživatel například přeje vytvořit adresu Ethereum končící na „AAA“, bude fungovat, dokud nevygeneruje adresu s těmito znaky jako příponou.

Když je vygenerována adresa, která neodpovídá podmínkám podrobně popsaným v sadě pravidel, Profanity „přidá 1 k soukromému klíči a odvozuje novou adresu Ethereum, dokud nenajde tu, která odpovídá pravidlům“.

Ethereum adresy jsou obvykle generovány lokálně pomocí kryptografie eliptických křivek. Při generování adresy Ethereum neprobíhá žádný výpočet, který by kontroloval, zda byl soukromý klíč v minulosti použit pro jinou adresu. To je však způsobeno velkým počtem možných adres Etherea.

Toto video vysvětluje skutečnou velikost 256bitové šifrování používané v kryptografii Etherea. Jednoduché srovnání lze také provést v tom, že existují zhruba 2^76 zrnek písku na světě, ale 2^160 možných adres Etherea.

Když jsou však jakékoli znaky adres Ethereum předem určeny, výpočet pro vygenerování soukromého klíče se výrazně zjednoduší a počet možných adres se dramaticky sníží.

Exploit

Amber Grouped vysvětlila, že chyba metody vulgárních výrazů pochází z použití 32bitového semena pro generování adres.

„K vygenerování náhodného soukromého klíče používá Profanity nejprve náhodné zařízení ke generování semene. Ale bohužel seed je 32bitový, což nelze použít přímo jako soukromý klíč.“

32bitový zdroj je přiváděn prostřednictvím generátoru pseudonáhodných čísel (PRNG), který používá deterministickou funkci. Výsledkem této metody PRNG je přímý způsob, jak určit všechna životaschopná jádra veřejného klíče použitá v rámci Profanity.

„Protože existuje pouze 2^32 možných počátečních párů klíčů (d_0,0, Q_0,0) a iterace v každém kole je vratná, je možné prolomit soukromý klíč z jakéhokoli veřejného klíče generovaného vulgárními výrazy.“

Metodou používanou Amber Group bylo získat veřejný klíč adresy, předem vypočítat možné veřejné klíče vulgárních výrazů, vypočítat veřejné klíče pomocí OpenCL, porovnat vypočítané veřejné klíče a poté rekonstruovat soukromý klíč, jakmile je nalezena shoda.

Vzhledem k jednoduchosti metody Amber Group doporučuje, aby „vaše prostředky nebyly v bezpečí, pokud byla vaše adresa vygenerována vulgárními výrazy“.

Řekla to Amber Group CryptoSlate že ve vztahu k tomu, zda je potřeba lepší kryptografický algoritmus, „odpověď je zjevně ano… průmysl vidí, jak zranitelný je tento typ návrhu.“

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