Datum poročila: 2023-12-20
Datum dogodka: 2023-12-14
Vrsta odkritega dogodka: Nepooblaščen dostop in zlonamerna koda
Povzetek
Ledger je v četrtek, 14. decembra 2023, zaznal izkoriščanje z uporabo kompleta Ledger Connect Kit. To izkoriščanje je vbrizgalo zlonamerno kodo v aplikacije DApps, ki so uporabljale komplet Ledger Connect Kit, in uporabnike EVM DApp zavedlo, da so podpisali transakcije, ki so izpraznile njihove denarnice. Izkoriščanje je bilo hitro opaženo in kmalu zatem je bila sprejeta resolucija. Medtem je majhno število uporabnikov padlo v napad in podpisalo transakcije, ki so izpraznile njihovo denarnico.
Timeline
Ure na časovni premici so podrobno navedene z uporabo časovnega pasu po srednjeevropskem času (CET):
2023: zjutraj: Nekdanji zaposleni v Ledgerju je postal žrtev prefinjenega lažnega predstavljanja, ki je pridobil dostop do njihovega računa NPMJS, mimo 2FA, z uporabo žetona seje posameznika.
2023-12-14 – 09:49 / 10:44 / 11:37: Napadalec je na NPMJS (upravljalnik paketov za kodo Javascript, ki si jo delijo aplikacije), objavil zlonamerno različico kompleta Ledger Connect Kit (vpliva na različice 1.1.5, 1.1.6 in 1.1.7). Zlonamerna koda je uporabila lažni projekt WalletConnect za preusmeritev sredstev v denarnice hekerjev.
2023-12-14: 1.45: Ledger je bil obveščen o napadu, ki je potekal, zahvaljujoč hitri reakciji različnih akterjev v ekosistemu, vključno z Blockaidom, ki je stopil v stik z ekipo Ledger in delil posodobitve o X.
2023-12-14: 2.18: Ledgerjeve tehnološke in varnostne ekipe so bile obveščene o napadu in Ledgerjeve ekipe so v 40 minutah po tem, ko je Ledger izvedel, namestile pristno različico popravka Ledger Connect Kit. Zaradi narave CDN (Content Delivery Network) in mehanizmov predpomnjenja na internetu je zlonamerna datoteka ostala dostopna nekaj dlje. Od kompromicije NPMJS do popolne razrešitve je minilo približno 5 ur. Ta razširjena razpoložljivost zlonamerne kode je bila posledica časa, ki ga je CDN potreboval za širjenje in globalno posodobitev predpomnilnikov z najnovejšo, pristno različico datoteke. Kljub peturni prisotnosti datoteke na podlagi naše preiskave ocenjujemo, da je bilo okno, v katerem so bila uporabniška sredstva aktivno izpraznjena, skupno omejeno na manj kot dve uri.
Ledger se je hitro uskladil z našim partnerjem WalletConnect, ki je onemogočil goljufivi primerek WalletConnect, ki se uporablja za črpanje sredstev iz uporabnikov.
2023-12-14: 2.55 Po naši koordinaciji je Tether zamrznil USDT napadalca(-ov) (prim. TX).
Analiza temeljnega vzroka, ugotovitve in preventivni ukrepi
Ozadje
Ledger Connect-Kit je odprtokodna knjižnica Java Script, ki razvijalcem omogoča povezovanje njihovih DApps s strojno opremo Ledger. Lahko se integrira z uporabo Connect-Kit-loader komponenta, ki aplikaciji DApp omogoča nalaganje Connect-Kit med izvajanjem iz CDN. To razvijalcem DApp omogoča, da imajo vedno najnovejšo različico aplikacije Connect-Kit brez potrebe po ročnem posodabljanju različic paketov in izdajanju novih različic. CDN, ki ga uporablja Ledger za distribucijo, je NPMJS. Večina DApps ima integrirano Connect-Kit z uporabo omenjenega Connect-Kit-loaderja.
Pri izkoriščanju kompleta Ledger Connect napadalec nikoli ni imel dostopa do nobene infrastrukture Ledger, repozitorija kode Ledger ali do samih DApps. Napadalec je lahko potisnil paket zlonamerne kode v CDN namesto samega kompleta Connect-Kit. To zlonamerno kodo Connect-Kit so nato dinamično naložili DApps, ki že integrirajo Connect-Kit-loader.
Izkoriščanje Ledger Connect Kit izpostavlja tveganja, s katerimi se skupaj soočata Ledger in industrija, da bi zaščitili uporabnike, in je tudi opomnik, da moramo skupaj še naprej dvigovati mejo varnosti okoli DApps, kjer bodo uporabniki sodelovali pri podpisovanju prek brskalnika. Tokrat je bila izkoriščena Ledgerjeva storitev, v prihodnosti pa bi se to lahko zgodilo še kateri storitvi ali knjižnici.
Glavni vzrok
Da bi lahko napadel paket zlonamerne kode na NPMJS, je napadalec lažno predstavljal nekdanjega zaposlenega, da bi izkoristil posameznikov dostop do NPMJS. Dostop nekdanjega zaposlenega do sistemov Ledger (vključno z Githubom, storitvami, ki temeljijo na SSO, vsemi notranjimi orodji Ledger in zunanjimi orodji) je bil pravilno preklican, žal pa dostop nekdanjih zaposlenih do NPMJS ni bil pravilno preklican.
Lahko potrdimo, da je bil to nesrečen osamljen dogodek. Dostopi do infrastrukture Ledger s strani zaposlenih v Ledgerju so samodejno preklicani med odhodom zaposlenih, vendar zaradi tega, kako trenutne tehnološke storitve in orodja trenutno delujejo globalno, ne moremo samodejno preklicati dostopa do določenih zunanjih orodij (vključno z NPMJS) in jih je treba obdelati ročno z kontrolni seznam za odpuščanje zaposlenih za vsakega posameznika. Ledger ima obstoječ in redno posodobljen postopek izključitve, pri katerem odstranimo odhajajoče zaposlene iz vseh zunanjih orodij. V tem posameznem primeru dostop ni bil ročno preklican na NPMJS, kar obžalujemo, in revidiramo z zunanjim tretjim partnerjem.
To je bil prefinjen napad, ki ga je izvedel napadalec. Kljub uveljavitvi dvofaktorske avtentikacije (2FA) na ciljnem računu NPMJS, ki bi običajno odvrnila številne poskuse, je napadalec zaobšel ta varnostni ukrep z izkoriščanjem ključa API, povezanega z računom nekdanjega zaposlenega.
Ta specifični napad je napadalcu omogočil nalaganje nove zlonamerne različice kompleta Ledger Connect Kit, ki je vseboval tako imenovano zlonamerno programsko opremo Angel Drainer. Angel Drainer je zlonamerna programska oprema kot storitev, ki je posebej zasnovana za ustvarjanje zlonamernih transakcij, ki ob podpisu praznijo denarnice. To je popolna infrastruktura, specializirana za verige EVM, ki uvaja pametne pogodbe na zahtevo in oblikuje prilagojene transakcije, da poveča škodo.
žal NPMJS.com ne dovoljuje večkratne avtorizacije ali preverjanja podpisa za samodejno založništvo. Delamo na dodajanju ad hoc mehanizmov, ki uveljavljajo dodatne kontrole v fazi uvajanja.
Ugotovitve
To je bil dobro pripravljen napad, ki so ga izvedli izkušeni napadalci. Izvedena tehnika lažnega predstavljanja se ni osredotočila na poverilnice, kar vidimo pri večini napadov Front-End, ki vplivajo na ekosistem, temveč je napadalec delal neposredno na žetonu seje.
Uporabljena zlonamerna programska oprema je bila Angel Drainer, varnostna skupina Ledger pa je v zadnjih treh mesecih opazila povečanje kriminalnih dejavnosti z uporabo te zlonamerne programske opreme (glejte to objavljeno Poročilo o blokadi). V verigi lahko vidimo tudi, da se ukradena sredstva razdelijo: 85 % izkoriščevalcu in 15 % Angel Drainerju, kar bi lahko razumeli kot zlonamerno programsko opremo kot storitev.
Ta Angel Drainer zavede uporabnike, da podpišejo različne vrste transakcij, odvisno od vrste sredstva, ki ga trenutno cilja. Za žetone ERC20 in NFT od uporabnikov zahteva podpis odobritev in omogočajo sporočila. Za izvorne žetone izčrpavalec od uporabnika zahteva, da podpiše bodisi lažno transakcijo »zahtevanja«, kjer trdijo metoda preprosto pomete sredstva ali preproste prenose žetonov, ki jih je mogoče pozneje pomesti z uvedbo pametne pogodbe na ustreznem naslovu.
Zato še naprej spodbujamo jasno podpisovanje kot panoga, tako da lahko uporabniki preverijo, kaj vidijo na zaupanja vrednem zaslonu na svoji strojni napravi Ledger.
Popravni ukrepi
Ekipe za varnost in tehnologijo Ledger, vključno z izvršno ekipo Ledger, trenutno pregledujejo in revidirajo vse naše kontrole dostopa do notranjih in zunanjih orodij in sistemov Ledger, ki jih uporabljamo.
Ledger bo okrepil svoje pravilnike, ko gre za pregled kode, uvajanje, distribucijo in nadzor dostopa, vključno z dodajanjem vseh zunanjih orodij k našemu vzdrževanju in pregledom izven vkrcanja. Še naprej bomo posploševali podpisovanje kode, ko bo to ustrezno. Poleg tega izvajamo redne notranje revizije, da zagotovimo, da se to pravilno izvaja.
Ledger že organizira varnostna usposabljanja, vključno z lažnim predstavljanjem. V začetku leta 2024 bo okrepljen tudi program usposabljanja za notranjo varnost za vse zaposlene v njihovih oddelkih. Ledger že organizira redne varnostne ocene tretjih oseb in bo tem ocenam še naprej dajal prednost.
V začetku leta 2024 bo izvedena posebna revizija tretje osebe, osredotočena na nadzor dostopa, promocijo kode in distribucijo.
Poleg tega bomo okrepili naše sisteme za spremljanje infrastrukture in opozarjanje, da bomo lahko še hitreje zaznali prihodnje incidente in se nanje odzvali.
Nazadnje bomo podvojili preprečevanje slepega podpisovanja in ga odstranili kot možnost za uporabnike Ledgerja, da bi zagotovili največjo varnostno prakso, in poučili uporabnike o potencialnem vplivu podpisovanja transakcij brez varnega prikaza ali razumevanja, kaj podpisujejo, če ne uporabljajo Jasno podpisovanje.
Še enkrat se zahvaljujemo našim partnerjem v ekosistemu za hitro sodelovanje z ekipami Ledgerja pri prepoznavanju in reševanju izkoriščanja.
- Distribucija vsebine in PR s pomočjo SEO. Okrepite se še danes.
- PlatoData.Network Vertical Generative Ai. Opolnomočite se. Dostopite tukaj.
- PlatoAiStream. Web3 Intelligence. Razširjeno znanje. Dostopite tukaj.
- PlatoESG. Ogljik, CleanTech, Energija, Okolje, sončna energija, Ravnanje z odpadki. Dostopite tukaj.
- PlatoHealth. Obveščanje o biotehnologiji in kliničnih preskušanjih. Dostopite tukaj.
- vir: https://www.ledger.com/blog/security-incident-report
- :ima
- : je
- :ne
- :kje
- 09
- 1
- 10
- 11
- 15%
- 2023
- 2024
- 26
- 2FA
- 40
- 51
- 53
- 7
- a
- Sposobna
- dostop
- dostopen
- Račun
- aktivno
- dejavnosti
- akterji
- Ad
- dodajanje
- Poleg tega
- Poleg tega
- Naslov
- vplivajo
- po
- spet
- vsi
- omogočajo
- Dovoli
- omogoča
- že
- Prav tako
- vedno
- an
- Analiza
- in
- Angel
- Še ena
- kaj
- API
- približno
- aplikacije
- SE
- okoli
- AS
- Ocene
- sredstvo
- Sredstva
- povezan
- At
- napad
- Napadi
- Poskusi
- Revizija
- revidiranje
- revizije
- Preverjanje pristnosti
- samodejno
- razpoložljivost
- zaveda
- bar
- temeljijo
- BE
- postajajo
- počutje
- med
- slepi
- Na kratko
- Gradi
- vendar
- by
- CAN
- ne more
- primeru
- Vzrok
- Osrednji
- nekatere
- verige
- Pregledi
- jasno
- Koda
- Pregled kode
- skupaj
- prihaja
- dokončanje
- komponenta
- poteka
- vodenje
- Potrdi
- Connect
- vseboval
- vsebina
- naprej
- Naročilo
- pogodbe
- nadzor
- Nadzor
- usklajeno
- usklajevanje
- Ustrezno
- bi
- obrti
- Mandatno
- kazenska
- Trenutna
- Trenutno
- škoda
- dapp
- Razvijalci DApp
- DApps
- december
- dostava
- Povpraševanje
- oddelki
- Odvisno
- razporejeni
- uvajanja
- uvajanje
- razpolaga
- zasnovan
- Kljub
- podrobno
- odkrivanje
- Zaznali
- Razvijalci
- naprava
- DID
- drugačen
- neposredno
- onemogočena
- zaslon
- distribucija
- ne
- podvojila
- navzdol
- možganov
- izsušena
- 2
- med
- dinamično
- vsak
- Zgodnje
- ekosistem
- izobraževanje
- bodisi
- Zaposlen
- Zaposleni
- omogočena
- spodbujanje
- uveljavljanje
- sodelovati
- zagotovitev
- ERC20
- oceniti
- Eter (ETH)
- Evropski
- Tudi
- EVM
- izvršeno
- izvršni
- obstoječih
- izkušen
- Izkoristite
- Exploited
- podaljšan
- zunanja
- Obraz
- ponaredek
- hitreje
- file
- Ugotovitve
- pet
- fiksna
- Osredotočite
- osredotočena
- za
- Nekdanji
- iz
- Skladi
- ukradena sredstva
- nadalje
- Prihodnost
- pridobljeno
- pristen
- GitHub
- Globalno
- se zgodi
- strojna oprema
- strojna naprava
- Imajo
- ob
- Poudarki
- uro
- URE
- Kako
- Vendar
- http
- HTTPS
- identifikacijo
- vpliv
- izvajali
- in
- nesreča
- Incidenti
- vključeno
- Vključno
- Povečajte
- individualna
- Industrija
- Infrastruktura
- v notranjosti
- primer
- Namesto
- integrirati
- integrirana
- notranji
- Internet
- v
- preiskava
- izolirani
- IT
- ITS
- sam
- Java
- JavaScript
- Ključne
- Komplet
- pozneje
- Zadnji
- Ledger
- manj
- Vzvod
- Knjižnica
- malo
- obremenitev
- več
- nizka
- je
- vzdrževanje
- Znamka
- zlonamerna programska oprema
- upravitelj
- ročno
- več
- max širine
- Povečajte
- medtem
- merjenje
- Mehanizmi
- omenjeno
- sporočil
- min
- spremljanje
- mesecev
- jutro
- Najbolj
- morajo
- materni
- Narava
- Nimate
- mreža
- Novo
- NFT
- nft žetoni
- Običajno
- of
- on
- Na verigi
- v teku
- odprite
- open source
- deluje
- Možnost
- or
- Da
- organizira
- naši
- ven
- paket
- partner
- partnerji
- zabava
- opravil
- preteklosti
- Ribarjenje
- lažni napad
- Kraj
- platon
- Platonova podatkovna inteligenca
- PlatoData
- prosim
- pm
- politike
- potencial
- vaje
- pripravljeni
- Prisotnost
- preprečevanje
- Prednost
- postopek
- Program
- Projekt
- promocija
- pravilno
- zaščito
- objavljeno
- Push
- hitro
- dvigniti
- dosegel
- Reagirajo
- reakcija
- nedavno
- ponavljajoče se
- glejte
- besedilu
- Obžalujem
- redni
- redno
- okrepi
- sprostitev
- pomembno
- ostalo
- opomnik
- odstrani
- odstranjevanje
- poročilo
- Skladišče
- zahteva
- Resolucija
- reševanje
- tisti,
- povzroči
- pregleda
- pregledovanje
- tveganja
- s
- script
- zavarovanje
- varnost
- glej
- videl
- Storitev
- Storitve
- Zasedanje
- sej
- deli
- podpisati
- Podpis
- podpisano
- podpis
- Enostavno
- preprosto
- pametna
- pametna pogodba
- Pametne pogodbe
- So
- prefinjeno
- vir
- specializirani
- specifična
- posebej
- po delih
- Stage
- Začetek
- ukradeno
- Preverite
- hitro
- sistemi
- prilagojene
- sprejeti
- ciljno
- ciljanje
- skupina
- Skupine
- tehnika
- Tehnologija
- Tether
- kot
- hvala
- hvala
- da
- O
- Prihodnost
- njihove
- sami
- POTEM
- te
- jih
- tretja
- ta
- 3
- četrtek
- čas
- do
- žeton
- Boni
- orodja
- Skupaj za plačilo
- usposabljanje
- transakcija
- Transakcije
- transferji
- zaupa
- dva
- tip
- Vrste
- razumevanje
- nesrečno
- na žalost
- Nadgradnja
- posodobitve
- USDT
- uporaba
- Rabljeni
- uporabnik
- Uporabniki
- uporabo
- skrajno
- Preverjanje
- preverjanje
- različica
- Žrtva
- Obseg
- denarnica
- Denarnice
- je
- we
- Dobro
- so bili
- Kaj
- Kaj je
- kdaj
- ki
- WHO
- zakaj
- bo
- okno
- z
- v
- brez
- delal
- deluje
- bi
- X
- zefirnet