AktualnościKryptoLedger łata lukę w podpisywaniu transakcji Ethereum, która mogła pozwolić złośliwym dApp-om na podmianę transakcji podczas zatwierdzania

Ledger łata lukę w podpisywaniu transakcji Ethereum, która mogła pozwolić złośliwym dApp-om na podmianę transakcji podczas zatwierdzania

Autor: CryptoMeter io·

Najważniejsze informacje

  • Błąd typu race condition w procesie podpisywania w aplikacji Ethereum od Ledger mógł pozwolić złośliwemu dApp-owi na to, że urządzenie wyświetla jedną transakcję, podczas gdy faktycznie podpisuje inną.
  • Badacze zgłosili podatność firmie Ledger 21 sierpnia, zweryfikowali jej działanie na urządzeniu Ledger, a luka została publicznie ujawniona 24 sierpnia.
  • Problem został naprawiony w aktualizacji aplikacji Ethereum od Ledger, a użytkownicy korzystający z dApp-ów Ethereum powinni zaktualizować Ledger Wallet i zainstalować najnowszą wersję aplikacji.
  • Podatność nie spowodowała ujawnienia kluczy prywatnych ani ogólnego zagrożenia urządzeń Ledger; dotyczyła integralności danych transakcji prezentowanych podczas jednego konkretnego procesu podpisywania.
  • Incydent podkreśla ciągle istotną rolę weryfikowania szczegółów transakcji na ekranie portfela sprzętowego — cel wspierany także przez inicjatywę Clear Signing w Ethereum.
Ledger łata lukę w podpisywaniu transakcji Ethereum, która mogła pozwolić złośliwym dApp-om na podmianę transakcji podczas zatwierdzania

Ledger załatał podatność w niektórych procesach podpisywania transakcji Ethereum, która mogła pozwolić złośliwej aplikacji zdecentralizowanej (dApp) na podmianę transakcji, podczas gdy użytkownik nadal ją przeglądał. Luka znajdowała się na granicy bezpieczeństwa między dApp-em a procesem podpisywania Ethereum w urządzeniach Ledger — czyli w miejscu, w którym użytkownicy polegają na portfelu sprzętowym, aby potwierdzić dokładnie tę transakcję, którą zamierzają autoryzować.

Podatność została publicznie zgłoszona 24 sierpnia, po tym jak badacze bezpieczeństwa zidentyfikowali błąd typu race condition w procesie podpisywania aplikacji Ethereum. Zgodnie z raportami atakujący mógł potencjalnie wykorzystać proces podpisywania w taki sposób, że urządzenie wyświetlało jedną transakcję, podczas gdy faktycznie podpisywało inną.

Jak mógł przebiegać atak

Ryzyko dotyczyło okresu między przeglądem transakcji a ostatecznym zatwierdzeniem. Złośliwy dApp mający dostęp do połączenia z urządzeniem mógł w tym oknie czasowym próbować wprowadzić inne dane transakcji.

Taki scenariusz podważyłby jedno z podstawowych zabezpieczeń portfela sprzętowego: możliwość weryfikacji szczegółów transakcji na zaufanym urządzeniu przed podpisaniem. Oprogramowanie Ethereum od Ledger kładzie nacisk na czytelne dla człowieka informacje o transakcjach dzięki architekturze Clear Signing, zaprojektowanej tak, aby ułatwić weryfikację zatwierdzeń.

Zgodnie z raportami bezpieczeństwa podatność zgłoszono firmie Ledger 21 sierpnia, a badacze zweryfikowali to zachowanie na urządzeniu Ledger. Problem został następnie rozwiązany w aktualizacji aplikacji Ethereum.

Użytkownicy powinni zaktualizować oprogramowanie przed podpisywaniem

Użytkownicy Ledgera korzystający z dApp-ów Ethereum powinni zaktualizować Ledger Wallet i zainstalować najnowszą aplikację Ethereum dostępną dla swojego urządzenia. Powinni oni również nadal sprawdzać szczegóły transakcji bezpośrednio na portfelu sprzętowym przed zatwierdzeniem, ponieważ kluczowa granica zaufania przypada na moment, w którym urządzenie pokazuje, co jest podpisywane.

Podatność nie oznacza, że urządzenia Ledger zostały ogólnie zagrożone ani że klucze prywatne zostały ujawnione. Zgłoszony problem dotyczył natomiast integralności danych transakcji prezentowanych podczas jednego konkretnego procesu podpisywania.

Incydent pokazuje również, dlaczego weryfikacja transakcji pozostaje istotna nawet przy korzystaniu z portfeli sprzętowych, zwłaszcza że aplikacje Ethereum coraz częściej opierają się na interakcjach ze smart kontraktami, które mogą być trudniejsze do odczytania na pierwszy rzut oka. Szersza inicjatywa Clear Signing w ekosystemie Ethereum ma na celu wzmocnienie tej warstwy weryfikacji, pokazując użytkownikom zrozumiałe szczegóły transakcji zamiast nieprzejrzystych danych kontraktów.