Badacze ds. bezpieczeństwa odkryli niepokojącą nową metodę, którą hakerzy mogą wykorzystać do wydobycia kluczy prywatnych ze sprzętowego portfela Bitcoin, nawet jeśli podpisali tylko dwie transakcje. Nazwali je „Dark Skippy”.
Luka potencjalnie dotyczy wszystkich modeli portfeli sprzętowych — choć może się okazać, że zadziała tylko wtedy, gdy atakujący oszuka ofiarę i nakłoni ją do pobrania złośliwego oprogramowania układowego.
Poprzednia wersja metody wymagała od ofiary przesłania „dziesiątek” transakcji do łańcucha bloków. Jednak nowa wersja „Dark Skippy” może zostać przeprowadzona nawet jeśli ofiara prześle tylko kilka transakcji do łańcucha bloków. Ponadto atak może zostać przeprowadzony nawet jeśli użytkownik polega na oddzielnym urządzeniu do generowania słów początkowych.
Raport informacyjny został opublikowany przez Lloyda Fourniera, Nicka Farrowa i Robina Linusa 5 sierpnia. Fournier i Farrow są współzałożycielami firmy produkującej sprzętowe portfele Frostsnap, a Linus jest współtwórcą protokołów Bitcoin ZeroSync i BitVM.
Według raportu oprogramowanie sprzętowe portfela sprzętowego można zaprogramować tak, aby osadzało części słów początkowych użytkownika w „tajnych nonce’ach o niskiej entropii”, które są następnie używane do podpisywania transakcji. Powstałe podpisy są publikowane w blockchainie po potwierdzeniu transakcji. Następnie atakujący może przeskanować blockchain, aby znaleźć i zarejestrować te podpisy.
Powstałe podpisy zawierają tylko „publiczne nonces”, a nie części samych słów początkowych. Jednak atakujący może wprowadzić te publiczne nonces do algorytmu Pollarda Kangaroo, aby pomyślnie obliczyć tajne nonces z ich publicznych wersji.
Algorytm Kangaroo Pollarda, odkryty przez matematyka Johna M. Pollarda, to algorytm w algebrze obliczeniowej, który można wykorzystać do rozwiązania problemu logarytmu dyskretnego.
Według badaczy, za pomocą tej metody można uzyskać pełny zestaw słów kluczowych użytkownika, nawet jeśli użytkownik wygeneruje tylko dwa podpisy ze swojego zainfekowanego urządzenia i nawet jeśli słowa kluczowe zostały wygenerowane na oddzielnym urządzeniu.
Powiązane: Odkryto poważną lukę w zabezpieczeniach portfela, ponieważ użytkownik ledwo odzyskał 9 BTC
Poprzednie wersje tej luki zostały udokumentowane w przeszłości, stwierdzili badacze. Jednak te starsze wersje polegały na „szlifowaniu nonce”, znacznie wolniejszym procesie, który wymagał opublikowania wielu transakcji w blockchain. Mimo to badacze powstrzymali się od nazwania Dark Skippy nową luką, twierdząc zamiast tego, że jest to „nowy sposób wykorzystania istniejącej luki”.
Aby złagodzić zagrożenie, raport sugeruje, że producenci portfeli sprzętowych powinni zachować szczególną ostrożność, aby zapobiec przedostaniu się złośliwego oprogramowania układowego do urządzeń użytkowników, co mogą zrobić za pomocą funkcji takich jak „bezpieczny rozruch i zablokowane interfejsy JTAG/SWD […] odtwarzalne i podpisane przez dostawcę kompilacje oprogramowania układowego[,...] [i] różne inne funkcje bezpieczeństwa”. Ponadto sugeruje, że właściciele portfeli mogą chcieć stosować praktyki, aby zapewnić bezpieczeństwo swoich urządzeń, w tym „tajne miejsca, sejfy osobiste, a może nawet torby z zabezpieczeniem przed manipulacją”, chociaż raport sugeruje również, że praktyki te mogą być „uciążliwe”.
Inną sugestią jest, aby oprogramowanie portfela korzystało z protokołów podpisywania „anty-eksfiltracyjnych”, które zapobiegają samodzielnemu generowaniu nonce'ów przez sprzętowy portfel.
Luki w zabezpieczeniach portfeli Bitcoin powodowały w przeszłości znaczne straty dla użytkowników. W sierpniu 2023 r. firma zajmująca się cyberbezpieczeństwem Slowmist poinformowała, że Bitcoiny o wartości ponad 900 000 USD zostały skradzione z powodu luki w bibliotece Libbitcoin Explorer. W listopadzie Unciphered poinformował, że Bitcoiny o wartości 2,1 mld USD przechowywane w starych portfelach mogą być zagrożone wykradzeniem przez atakujących z powodu luki w oprogramowaniu portfela BitcoinJS.
Magazyn: oszustwo „Elon Musk na Bitcoin 2024”, włamania do Lazarus Group, phishing MOG: Crypto-Sec