Хакването на Wintermute, възпроизведено на обикновен лаптоп за по-малко от 48 часа чрез използване на пропуска на ругатните

Amber Group, доставчик на блокчейн технология, повтори хака Wintermute за по-малко от 48 часа, използвайки базов лаптоп. В доклад на Amber Group се казва,

„Използвахме Macbook M1 с 16 GB RAM, за да изчислим предварително набор от данни за по-малко от 10 часа… Завършихме внедряването и успяхме да разбием частния ключ на 0x0000000fe6a514a32abdcdfcc076c85243de899b за по-малко от 48 часа.“

- хамалски се приписва на адреси за суета, създадени с инструмента за ругатни, позволяващ на потребителите да генерират конкретни адреси на ethereum с определени знаци. В случая на Wintermute адресът съдържа седем водещи нули. Собствените адреси позволяват акаунтите да имат подобни знаци, което улеснява идентифицирането на публичните адреси в блокчейна.

Друго въздействие на адрес на Ethereum с няколко водещи нули е намаляването на таксите за газ поради намаленото пространство, необходимо за съхраняване на информацията в блокчейна. Въпреки това, премахването на елемент на произволност от криптографския процес, използван при генерирането на адреса, идва с цената на намалена сигурност.

Първоначалният анализ предполага, че ще са необходими 1,000 графични процесора само за 50 дни, за да генерират всеки възможен частен ключ за адреси, които започват със седем водещи нули. Сега обаче Amber Group твърди, че може да се постигне само с един лаптоп за по-малко от 48 часа.

Криптографията е обяснена

ругатни е инструмент за генериране на адреси за екосистемата Ethereum. Кодовата база може лесно да бъде изтеглена от GitHub и е достъпна от 2017 г. Въпреки това, текущата версия на кодовата база включва предупреждение, препоръчващо да не се използва инструментът. Създателят на инструмента, Йогусе, добави следното съобщение към файла readme.md на 15 септември 2022 г.

„Силно препоръчвам да не използвате този инструмент в сегашното му състояние. Това хранилище скоро ще бъде допълнително актуализирано с допълнителна информация относно този критичен проблем.“

Освен това, основните двоични файлове бяха премахнати, за да попречат на потребителите да компилират кодовата база, „за да предотвратят по-нататъшно опасно използване на този инструмент“.

The Profanity използва локална „мощност на GPU с OpenCL чрез прост алгоритъм“, за да генерира частни и публични ключове на Ethereum, докато намери адрес, който отговаря на правилата, зададени от потребителя. Например, ако потребител желае да създаде адрес на Ethereum, завършващ на „AAA“, той ще продължи да работи, докато не генерира адрес с тези знаци като суфикс.

Когато се генерира адрес, който не отговаря на условията, описани в набора от правила, Profanity „добавя 1 към частния ключ и извлича нов Ethereum адрес, докато намери този, който отговаря на правилата.“

Ethereum адресите обикновено се генерират локално с помощта на криптография с елиптична крива. При генериране на адрес в Ethereum няма изчисление за проверка дали частният ключ е бил използван в миналото за друг адрес. Това обаче се дължи на големия брой възможни адреси на Ethereum.

Това видео обяснява истинската величина на 256-битово криптиране използвани в криптографията на Ethereum. Може да се направи и просто сравнение, тъй като има грубо 2^76 песъчинки в света, но 2^160 възможни адреса на Ethereum.

Въпреки това, когато някои символи на адресите на Ethereum са предварително определени, изчислението за генериране на частния ключ става значително по-лесно и броят на възможните адреси се намалява драстично.

Експлойтът

Amber Grouped обясни, че недостатъкът на метода Profanity идва от използването на 32-битово семе за генериране на адреси.

„За да генерира произволен частен ключ, Profanity първо използва произволното устройство, за да генерира семе. Но за съжаление семето е 32-битово, което не може да се използва директно като частен ключ.

32-битовото начално число се подава през генератор на псевдослучайни числа (PRNG), който използва детерминирана функция. Този PRNG метод води до директен начин за определяне на всички жизнеспособни семена на публичен ключ, използвани в рамките на Profanity.

„Тъй като има само 2^32 възможни първоначални двойки ключове (d_0,0, Q_0,0) и итерацията на всеки кръг е обратима, възможно е да се разбие частният ключ от всеки публичен ключ, генериран от ругателство.“

Методът, използван от Amber Group, беше да получи публичния ключ на адреса, да изчисли предварително възможните публични ключове за ругатни, да изчисли публичните ключове с помощта на OpenCL, да сравни изчислените публични ключове и след това да реконструира частния ключ, след като бъде намерено съвпадение.

Поради простотата на метода, Amber Group препоръчва „вашите средства да не са безопасни, ако адресът ви е генериран от ругатни“.

каза Amber Group CryptoSlate че във връзка с това дали е необходим по-добър криптографски алгоритъм, „отговорът очевидно е да… индустрията може да види колко уязвим е този тип дизайн.“

Източник: https://cryptoslate.com/wintermute-hack-replicated-on-simple-laptop-in-under-48-hours-by-exploiting-profanity-flaw/