Data raportu: 2023-12-20
Data zdarzenia: 2023-12-14
Rodzaj wykrytego zdarzenia: Nieautoryzowany dostęp i złośliwy kod
Streszczenie
Ledger wykrył exploita przy użyciu zestawu Ledger Connect Kit w czwartek 14 grudnia 2023 r. Exploit ten wstrzykiwał złośliwy kod do aplikacji DApps, które korzystały z zestawu Ledger Connect Kit, nakłaniając użytkowników EVM DApp do podpisywania transakcji, które wyczerpują ich portfele. Exploit został szybko wykryty i wkrótce potem wdrożono rozwiązanie. W międzyczasie niewielka liczba użytkowników padła ofiarą ataku i podpisała transakcje, które wyczerpały ich portfel.
Oś czasu
Godziny na osi czasu są szczegółowe według strefy czasowej czasu środkowoeuropejskiego (CET):
2023: Rano: Były pracownik Ledger padł ofiarą wyrafinowanego ataku phishingowego, w wyniku którego uzyskał dostęp do jego konta NPMJS z pominięciem 2FA i przy użyciu tokena sesji danej osoby.
2023-12-14 – 09:49 / 10:44 / 11:37: Osoba atakująca opublikowała w NPMJS (menedżerze pakietów kodu JavaScript współdzielonego między aplikacjami) złośliwą wersję zestawu Ledger Connect Kit (dotyczącą wersji 1.1.5, 1.1.6 i 1.1.7). Szkodliwy kod wykorzystywał fałszywy projekt WalletConnect do przekierowywania zasobów do portfeli hakerów.
2023-12-14: 1.45:XNUMX: Ledger dowiedział się o trwającym ataku dzięki szybkiej reakcji różnych podmiotów w ekosystemie, w tym Blockaid, który skontaktował się z zespołem Ledger i udostępnił aktualizacje na platformie X.
2023-12-14: 2.18:XNUMX: Zespoły ds. technologii i bezpieczeństwa Ledger zostały zaalarmowane o ataku, a oryginalna wersja poprawki Ledger Connect Kit została wdrożona przez zespoły Ledger w ciągu 40 minut od uzyskania informacji przez Ledgera. Ze względu na naturę CDN (Content Delivery Network) i mechanizmy buforowania w Internecie złośliwy plik pozostawał dostępny przez nieco dłużej. Od kompromitacji NPMJS do całkowitego rozwiązania minęło około 5 godzin. Ta zwiększona dostępność złośliwego kodu wynikała z czasu potrzebnego sieci CDN na propagację i aktualizację swoich pamięci podręcznych na całym świecie przy użyciu najnowszej, oryginalnej wersji pliku. Mimo że plik istniał przez pięć godzin, na podstawie naszego dochodzenia szacujemy, że okres, w którym aktywnie zużywano zasoby użytkownika, trwał łącznie mniej niż dwie godziny.
Ledger szybko nawiązał współpracę z naszym partnerem WalletConnect, który wyłączył fałszywą instancję WalletConnect używaną do pobierania zasobów od użytkowników.
2023-12-14: 2.55:XNUMX Po naszej koordynacji Tether zamroził USDT atakującego (por. TX).
Analiza przyczyn źródłowych, ustalenia i środki zapobiegawcze
Kontekst
Księga główna Zestaw Connect to biblioteka Java Script o otwartym kodzie źródłowym, umożliwiająca programistom łączenie ich DApps ze sprzętem Ledger. Można go zintegrować za pomocą Connect-Kit-loader komponent, który pozwala aplikacji DApp załadować zestaw Connect-Kit w czasie wykonywania z sieci CDN. Dzięki temu programiści DApp zawsze mają najnowszą wersję Zestaw Connect bez konieczności ręcznego aktualizowania wersji pakietów i wydawania nowych kompilacji. CDN używany przez Ledger do dystrybucji to NPMJS. Większość DApps zintegrowała Zestaw Connect za pomocą wspomnianego modułu ładującego Connect-Kit.
W przypadku exploita Ledger Connect Kit osoba atakująca nie miała w żadnym momencie dostępu do żadnej infrastruktury Ledger, repozytorium kodów Ledger ani do samych aplikacji DApps. Osoba atakująca była w stanie przesłać pakiet złośliwego kodu do sieci CDN zamiast samego zestawu Connect-Kit. Ten złośliwy kod Connect-Kit został następnie dynamicznie załadowany przez DApps, które już zintegrowały moduł ładujący Connect-Kit.
Exploit Ledger Connect Kit uwydatnia zagrożenia, przed którymi stoi Ledger i cała branża, aby chronić użytkowników, a także przypomina, że wspólnie musimy w dalszym ciągu podnosić poprzeczkę w zakresie bezpieczeństwa wokół aplikacji DApps, w których użytkownicy będą korzystać z podpisywania za pomocą przeglądarki. Tym razem wykorzystano usługę Ledgera, ale w przyszłości może się to zdarzyć w innej usłudze lub bibliotece.
Główna przyczyna
Aby móc przesłać pakiet szkodliwego kodu do NPMJS, osoba atakująca wyłudziła informacje od byłego pracownika, aby wykorzystać jego dostęp do NPMJS. Dostęp byłego pracownika do systemów Ledger (w tym Github, usług opartych na SSO, wszystkich wewnętrznych narzędzi Ledger i narzędzi zewnętrznych) został prawidłowo odebrany, ale niestety dostęp byłych pracowników do NPMJS nie został prawidłowo odebrany.
Możemy potwierdzić, że był to niefortunny, odosobniony przypadek. Dostęp pracowników Ledger do infrastruktury Ledger jest automatycznie cofany podczas odchodzenia pracowników, jednakże ze względu na sposób, w jaki obecne usługi i narzędzia technologiczne działają obecnie na całym świecie, nie możemy automatycznie odwołać dostępu do niektórych narzędzi zewnętrznych (w tym NPMJS) i należy je obsługiwać ręcznie za pomocą lista kontrolna dotycząca odejścia pracownika z pracy dla każdej osoby. Ledger posiada istniejącą i regularnie aktualizowaną procedurę offboardingu, w ramach której usuwamy odchodzących pracowników ze wszystkich narzędzi zewnętrznych. W tym indywidualnym przypadku dostęp do NPMJS nie został ręcznie cofnięty, czego ubolewamy i obecnie przeprowadzamy audyt z zewnętrznym partnerem zewnętrznym.
Był to wyrafinowany atak przeprowadzony przez napastnika. Pomimo wymuszenia uwierzytelniania dwuskładnikowego (2FA) na docelowym koncie NPMJS, co zwykle powstrzymywałoby wiele prób, osoba atakująca obeszła to zabezpieczenie, wykorzystując klucz API powiązany z kontem byłego pracownika.
Ten konkretny atak umożliwił osobie atakującej przesłanie nowej, złośliwej wersji zestawu Ledger Connect Kit, która zawierała tak zwane złośliwe oprogramowanie Angel Drainer. Angel Drainer to złośliwe oprogramowanie w postaci usługi zaprojektowanej specjalnie do tworzenia złośliwych transakcji, które po podpisaniu wyczerpują portfele. Jest to kompletna infrastruktura specjalizująca się w łańcuchach EVM, która wdraża inteligentne kontrakty na żądanie i tworzy transakcje dostosowane do indywidualnych potrzeb w celu maksymalizacji szkód.
Niestety, NPMJS.com nie pozwala na wielokrotną autoryzację lub weryfikację podpisu w trybie automatycznym wydawniczy. Pracujemy nad dodaniem mechanizmów ad hoc wymuszających dalszą kontrolę na etapie wdrożenia.
Ustalenia
To był dobrze przygotowany atak, przeprowadzony przez doświadczonego(-ych) atakującego(-ów). Zaimplementowana technika phishingu nie skupiała się na danych uwierzytelniających, co obserwujemy w przypadku większości ataków front-end wpływających na ekosystem, ale zamiast tego osoba atakująca pracowała bezpośrednio na tokenie sesji.
Wykorzystanym złośliwym oprogramowaniem był Angel Drainer, a zespół ds. bezpieczeństwa Ledger zaobserwował w ciągu ostatnich trzech miesięcy wzrost aktywności przestępczej wykorzystującej to złośliwe oprogramowanie (proszę zapoznać się z opublikowanym Raport o blokadzie). W sieci widzimy również, że skradzione środki są rozdzielane: 85% na exploita i 15% na Angel Drainer, co może być postrzegane jako złośliwe oprogramowanie jako usługa.
Ten Angel Drainer oszukuje użytkowników do podpisywania różnych typów transakcji w zależności od rodzaju aktywów, na które aktualnie celuje. W przypadku tokenów ERC20 i NFT żąda od użytkowników podpisu zatwierdzenie i pozwolić wiadomości. W przypadku tokenów natywnych moduł odwadniający prosi użytkownika o podpisanie fałszywej transakcji „roszczenia”, w której roszczenie Metoda polega po prostu na zamiataniu środków lub prostych transferach tokenów, które można później przeprowadzić poprzez wdrożenie inteligentnej umowy pod odpowiednim adresem.
Dlatego też w dalszym ciągu zachęcamy całą branżę do korzystania z Clear Signing, aby użytkownicy mogli zweryfikować to, co widzą na zaufanym wyświetlaczu swojego urządzenia Ledger.
Działania zapobiegawcze
Zespoły ds. bezpieczeństwa i technologii Ledger, w tym zespół wykonawczy Ledger, obecnie przeglądają i audytują wszystkie nasze mechanizmy kontroli dostępu do wewnętrznych i zewnętrznych narzędzi i systemów Ledger, z których korzystamy.
Ledger wzmocni swoje zasady dotyczące przeglądu kodu, wdrażania, dystrybucji i kontroli dostępu, w tym dodając wszystkie narzędzia zewnętrzne do naszych kontroli konserwacji i opuszczania platformy. W stosownych przypadkach będziemy nadal uogólniać podpisywanie kodu. Dodatkowo przeprowadzamy okresowe audyty wewnętrzne, aby upewnić się, że jest to właściwie wdrażane.
Ledger organizuje już szkolenia z zakresu bezpieczeństwa, w tym szkolenia dotyczące phishingu. Na początku 2024 r. wzmocniony zostanie także program szkoleń w zakresie bezpieczeństwa wewnętrznego dla wszystkich pracowników w odpowiednich działach. Ledger już organizuje regularne oceny bezpieczeństwa przeprowadzane przez strony trzecie i będzie nadal nadawał tym ocenom priorytet.
Na początku 2024 roku zostanie przeprowadzony specjalny audyt strony trzeciej, koncentrujący się na kontroli dostępu, promocji i dystrybucji kodu.
Ponadto wzmocnimy nasze systemy monitorowania i ostrzegania infrastruktury, aby móc jeszcze szybciej wykrywać przyszłe incydenty i reagować na nie.
Na koniec skupimy się na zapobieganiu podpisywania w ciemno, usuwając je jako opcję dla użytkowników Ledger w celu zapewnienia najwyższych praktyk bezpieczeństwa i edukując użytkowników na temat potencjalnego wpływu podpisywania transakcji bez bezpiecznego wyświetlania lub zrozumienia, co podpisują, nie używając Wyczyść podpisywanie.
Jeszcze raz dziękujemy naszym partnerom w ekosystemie za szybką współpracę z zespołami Ledger w zakresie identyfikowania i rozwiązywania exploitów.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- PlatoData.Network Pionowe generatywne AI. Wzmocnij się. Dostęp tutaj.
- PlatoAiStream. Inteligencja Web3. Wiedza wzmocniona. Dostęp tutaj.
- PlatonESG. Węgiel Czysta technologia, Energia, Środowisko, Słoneczny, Gospodarowanie odpadami. Dostęp tutaj.
- Platon Zdrowie. Inteligencja w zakresie biotechnologii i badań klinicznych. Dostęp tutaj.
- Źródło: https://www.ledger.com/blog/security-incident-report
- :ma
- :Jest
- :nie
- :Gdzie
- 09
- 1
- 10
- 11
- 15%
- 2023
- 2024
- 26
- 2FA
- 40
- 51
- 53
- 7
- a
- Zdolny
- dostęp
- dostępny
- Konto
- aktywnie
- zajęcia
- aktorzy
- Ad
- dodanie
- dodatek
- do tego
- adres
- wpływający
- Po
- ponownie
- Wszystkie kategorie
- dopuszczać
- Pozwalać
- pozwala
- już
- również
- zawsze
- an
- analiza
- i
- Anioł
- Inne
- każdy
- api
- w przybliżeniu
- mobilne i webowe
- SĄ
- na około
- AS
- oceny
- kapitał
- Aktywa
- powiązany
- At
- atakować
- Ataki
- Próby
- Audyt
- audytu
- kontrole
- Uwierzytelnianie
- automatycznie
- dostępność
- świadomy
- bar
- na podstawie
- BE
- staje
- jest
- pomiędzy
- ślepy
- krótko
- Buduje
- ale
- by
- CAN
- nie może
- walizka
- Spowodować
- centralny
- pewien
- więzy
- Wykrywanie urządzeń szpiegujących
- jasny
- kod
- Przegląd kodu
- zbiorowo
- byliśmy spójni, od początku
- kompletny
- składnik
- przeprowadzone
- prowadzenia
- Potwierdzać
- Skontaktuj się
- zawarte
- zawartość
- kontynuować
- umowa
- umowy
- kontrola
- kontroli
- skoordynowane
- koordynacja
- Odpowiedni
- mógłby
- rzemiosło
- Listy uwierzytelniające
- Karny
- Aktualny
- Obecnie
- uszkodzić
- Dapp
- programiści DApp
- DApps
- grudzień
- dostawa
- Kreowanie
- Działy
- W zależności
- wdrażane
- wdrażanie
- Wdrożenie
- wdraża się
- zaprojektowany
- Mimo
- szczegółowe
- wykryć
- wykryte
- deweloperzy
- urządzenie
- ZROBIŁ
- różne
- bezpośrednio
- niepełnosprawny
- Wyświetlacz
- 分配
- robi
- Podwójna
- na dół
- drenaż
- osuszony
- z powodu
- podczas
- dynamicznie
- każdy
- Wcześnie
- Ekosystem
- kształcić
- bądź
- Pracownik
- pracowników
- włączony
- zachęcać
- Egzekwowanie
- zobowiązany
- zapewnić
- ERC20
- oszacowanie
- Eter (ETH)
- europejski
- Parzyste
- EVM
- wykonany
- wykonawczy
- Przede wszystkim system został opracowany
- doświadczony
- Wykorzystać
- eksploatowany
- dużym
- zewnętrzny
- Twarz
- imitacja
- szybciej
- filet
- Ustalenia
- pięć
- Fix
- Skupiać
- koncentruje
- W razie zamówieenia projektu
- Dawny
- od
- fundusze
- skradzione fundusze
- dalej
- przyszłość
- zdobyte
- prawdziwy
- GitHub
- Globalnie
- zdarzyć
- sprzęt komputerowy
- urządzenie sprzętowe
- Have
- mający
- pasemka
- godzina
- GODZINY
- W jaki sposób
- Jednak
- http
- HTTPS
- identyfikacja
- Rezultat
- realizowane
- in
- incydent
- incydenty
- włączony
- Włącznie z
- Zwiększać
- indywidualny
- przemysł
- Infrastruktura
- wewnątrz
- przykład
- zamiast
- integrować
- zintegrowany
- wewnętrzny
- Internet
- najnowszych
- śledztwo
- odosobniony
- IT
- JEGO
- samo
- Java
- JAVASCRIPT
- Klawisz
- zestaw
- później
- firmy
- Księga główna
- mniej
- Dźwignia
- Biblioteka
- mało
- załadować
- dłużej
- niski
- zrobiony
- konserwacja
- robić
- malware
- kierownik
- ręcznie
- wiele
- Maksymalna szerokość
- Maksymalizuj
- w międzyczasie
- zmierzyć
- Mechanizmy
- wzmiankowany
- wiadomości
- minuty
- monitorowanie
- miesięcy
- rano
- większość
- musi
- rodzimy
- Natura
- Potrzebować
- sieć
- Nowości
- NFT
- tokeny nft
- normalnie
- of
- on
- Na łańcuchu
- trwający
- koncepcja
- open source
- działać
- Option
- or
- zamówienie
- organizuje
- ludzkiej,
- na zewnątrz
- pakiet
- partnerem
- wzmacniacz
- przyjęcie
- minęło
- Przeszłość
- phishing
- atak phishingowy
- Miejsce
- plato
- Analiza danych Platona
- PlatoDane
- Proszę
- pm
- polityka
- potencjał
- praktyki
- przygotowany
- obecność
- zapobieganie
- Priorytet
- procedura
- Program
- projekt
- promocja
- prawidłowo
- chronić
- opublikowany
- Naciskać
- szybko
- podnieść
- osiągnięty
- React
- reakcja
- niedawny
- nawracający
- odnosić się
- , o którym mowa
- żal
- regularny
- regularnie
- wzmacniać
- zwolnić
- pozostał
- przypomnienie
- usunąć
- usuwanie
- raport
- składnica
- wywołań
- Rozkład
- rozwiązywanie
- osób
- dalsze
- przeglądu
- recenzowanie
- ryzyko
- s
- scenariusz
- bezpieczne
- bezpieczeństwo
- widzieć
- widziany
- usługa
- Usługi
- Sesja
- Sesje
- shared
- znak
- podpis
- podpisana
- podpisywanie
- Prosty
- po prostu
- mądry
- inteligentna umowa
- Inteligentne kontrakty
- So
- wyrafinowany
- Źródło
- wyspecjalizowanym
- specyficzny
- swoiście
- dzielić
- STAGE
- początek
- skradziony
- pewnie
- szybko
- systemy
- dostosowane
- Zadania
- ukierunkowane
- kierowania
- zespół
- Zespoły
- technika
- Technologia
- Pęta
- niż
- podziękować
- dzięki
- że
- Połączenia
- Przyszłość
- ich
- sami
- następnie
- Te
- one
- Trzeci
- to
- trzy
- czwartek
- czas
- do
- żeton
- Żetony
- narzędzia
- Kwota produktów:
- Trening
- transakcja
- transakcje
- transfery
- zaufany
- drugiej
- rodzaj
- typy
- zrozumienie
- nieszczęśliwy
- Niestety
- Aktualizacja
- Nowości
- USDT
- posługiwać się
- używany
- Użytkownik
- Użytkownicy
- za pomocą
- najwyższy
- Weryfikacja
- zweryfikować
- wersja
- Ofiara
- Tom
- Portfel
- Portfele
- była
- we
- DOBRZE
- były
- Co
- Co to jest
- jeśli chodzi o komunikację i motywację
- który
- KIM
- dlaczego
- będzie
- okno
- w
- w ciągu
- bez
- pracował
- pracujący
- by
- X
- zefirnet