Tento príspevok analyzuje útok na spoločnosť Ledger ako príklad toho, ako spear phishing viedol k útoku v rámci softvérového dodávateľského reťazca (SSC) na nástroj Software Connect-Kit, ktorý používali hardvérové peňaženky spoločnosti, čo umožnilo útočníkovi odčerpať peniaze v hodnote najmenej 600 000 dolárov.
Tento útok sa stal koncom roka sužovaného incidentmi v dodávateľskom reťazci. V tomto príspevku analyzujeme útok, jeho dopad, spôsob, akým bol zvládnutý a aké ponaučenia si z neho možno vziať.
Ledger a jeho používatelia hardvérových peňaženiek sú zjavnými cieľmi kyberzločincov. Používatelia peňaženiek útočili na používateľov Ledgeru prostredníctvom phishingových útokov na front-endoch krypto aplikácií a zločinci potrebovali poznať súradnice používateľov, aby mohli viesť phishingové kampane. Ledger mal únik údajov do júla 2023 ako aj byť súčasťou Krádež údajov zo septembra 2020 na ich e-commerce Shopify, incident s veľkým dopadom. Príspevok „Aktualizácia: Snahy o ochranu vašich údajov a stíhanie spammerov„ukazuje, aké hlboké boli tieto porušenia.
Spoločnosť Ledger musí brať bezpečnosť vážne (je kľúčovou súčasťou ich podnikania) s interným výskumným laboratóriom (donjon) manipulácia certifikácia zabezpečenia zariadeniasa Bug Bounty program bezpečnostné bulletinya modelovanie hroziebZatiaľ všetko v poriadku…
Ako bol útok vykonaný
Ledger zistil zneužitie pomocou Ledgerovho Súprava na pripojenie DApp vo štvrtok 14. decembra 2023. Tento exploit vložil škodlivý kód do decentralizovaných aplikácií (DApps) založených na Ethereu, ktoré používali Ledger Connect Kit, a oklamal používateľov, aby podpisovali transakcie, ktoré vyčerpávali ich peňaženky.
Zneužitie bolo rýchlo odhalené a krátko nato bolo implementované riešenie. Medzitým sa útoku dostal malý počet používateľov, ktorí podpísali transakcie, čím vyčerpali svoje peňaženky.
Útok sa začal, keď sa bývalý zamestnanec spoločnosti Ledger stal obeťou phishingového útoku, ktorý získal prístup k jeho/jej NPM účtu prostredníctvom session tokenu. Útočníci zverejnili škodlivé verzie @ledgerhq/connect-kit (1.1.5, 1.1.6 a 1.1.7, teraz už nepodporované). Útočníci by mohli spustiť ľubovoľný kód s rovnakou úrovňou oprávnení ako aplikácia peňaženky: útočníci môžu okamžite vyčerpať finančné prostriedky používateľov bez interakcie, distribuovať množstvo phishingových odkazov, aby oklamali používateľov, alebo zneužiť paniku používateľov tým, že ich presvedčia, aby previedli aktíva na novú adresu, čo by viedlo k strate aktív v dôsledku stiahnutia falošnej peňaženky.
Front-endy peňaženiek (dApps) zvyčajne používali connect-kit-loader balík z Ledgeru na načítanie Connect Kitu za behu z JavaScript CDN (jsDelivr). URL adresa bohužiaľ https://cdn.jsdelivr.net/npm/@ledgerhq/connect-kit@1 nefixoval presnú verziu (v tom čase 1.1.4), takže keď boli nahrané škodlivé verzie, boli poskytnuté (a uložené do vyrovnávacej pamäte) sieťou CDN. A nebol použitý žiadny kontrolný súčet, ktorý by zabezpečil, že stiahnutý zdroj z CDN bol skutočne očakávaným zdrojom (ktorý by sa mal použiť pri distribúcii kódu z CDN). Táto schéma založená na kontrolnom súčte sa nazýva Integrita podzdrojov (SRI).
Vložený kód pravdepodobne manipuloval s údajmi o transakciách a oklamal používateľov, aby potvrdili manipulované platby. Napríklad používateľ, ktorý schválil platbu tokenom na povolenie funkčnosti aplikácie, mohol namiesto toho vidieť schválenie platby na adresu hackera. Bez ohľadu na to, aká je hardvérová peňaženka bezpečná, peniaze boli vyčerpané.
Objav a vyšetrovanie
Rôzni používatelia začali na X (tiež známy ako Twitter) uverejňovať správy o tom, že front-end Zapperu „bol unesený“. Zásluhy patrí Mathewovi Lilleymu, technickému riaditeľovi kryptoobchodníka Sushi, ktorý ako prvý varoval. Príspevok v službe Twitter že bol napadnutý „bežne používaný konektor web3“. Neskôr poukázal na LedgerHQ/pripojovací kit ako kompromitovaná knižnica a poskytol prvé hodnotenie, trochu stroho:
Čo sa stalo?
— Som softvér 🦇🔊 (@MatthewLilley) Decembra 14, 2023
V skratke, @Hlavná kniha urobil reťaz hrozných chýb.
1. Načítavajú JS z CDN.
2. Nie sú to JS s uzamykaním verzií.
3. Ich CDN bola napadnutá.
Vyhýbal by som sa používaniu AKÝCHKOĽVEK dAppov, kým ich tímy nepotvrdia, že zmiernili útok. https://t.co/a3brXNQSx9
Používateľ 0xViva otvoril tiket v repozitári projektu GitHub: [SÚRNE] Toto úložisko používa škodlivú verziu balíka npm @ledgerhq/connect-kit, 1.1.7.
15. decembra 2023 zverejnila spoločnosť SlowMost, ktorá sa zaoberá bezpečnosťou blockchainu, analytický príspevok s úplnými podrobnosťami o škodlivých verziách.
Hardvérová peňaženka Ledger nebola napadnutá, iba Ledger Connect Kit. Keďže však túto knižnicu používa mnoho aplikácií, ako napríklad SushiSwap, Zapper, MetalSwap, Harvest Finance, Revoke.cash atď., rozsah dopadu bol značný. Podľa bittrace.io, niektoré obete sa v panike pokúsili previesť majetok na novú adresu, ale stiahli si falošnú aplikáciu peňaženky!
V ten istý deň Jameson Lopp presne tweet o nedostatkoch, ktoré umožnili úspech útoku:
Zdá sa, že dnešný bezpečnostný incident bol vyvrcholením 3 samostatných zlyhaní v spoločnosti Ledger:
- Jameson Lopp (@lopp) Decembra 14, 2023
1. Slepé načítanie kódu bez pripnutia konkrétnej verzie a kontrolného súčtu.
2. Nevynucovanie „pravidiel dvoch mužov“ pri kontrole kódu a nasadzovaní.
3. Neodobratie prístupu bývalým zamestnancom.
Ako bol incident vyriešený
Generálny riaditeľ spoločnosti Ledger Pascal Gauthier v ten istý deň útoku zverejnil... oznamovací list s ďalšími podrobnosťami o incidente, čo je určite dobré: Strkať hlavu do piesku ako pštros je najhorší spôsob, ako riešiť akýkoľvek kybernetický bezpečnostný incident.
Štruktúra listu je zaujímavá: Okamžite rozpoznal existenciu škodlivých verzií knižnice, ktoré vyčerpávajú peniaze, čo je dobré (popierať realitu je nezmysel):
„Dnes sme zaznamenali zneužitie v Ledger Connect Kit, knižnici Javascript, ktorá implementuje tlačidlo umožňujúce používateľom pripojiť ich zariadenie Ledger k DApp tretích strán (webovým stránkam pripojeným k peňaženke).“
Toto zneužitie bolo výsledkom toho, že sa bývalý zamestnanec stal obeťou phishingového útoku, ktorý umožnil útočníkovi nahrať škodlivý súbor do Ledgerovho NPMJS (správcu balíkov pre kód Javascript zdieľaný medzi aplikáciami).
Spolu s naším partnerom WalletConnect sme rýchlo pracovali na odstránení tohto zneužitia a aktualizovali sme NPMJS, aby sme odstránili a deaktivovali škodlivý kód do 40 minút od jeho objavenia. Toto je dobrý príklad rýchlej spolupráce odvetvia pri riešení bezpečnostných výziev.“
Čože? Bývalému zamestnancovi s publikačnými právami neboli odobraté poverenia na NPM?
Generálny riaditeľ následne vymenoval zavedené bezpečnostné kontroly, ale naznačil, že s prístupom NPM je niečo slabé:
„Teraz by som sa rád venoval tomu, prečo sa to stalo, ako zlepšíme naše bezpečnostné postupy, aby sme v budúcnosti zmiernili toto konkrétne riziko, a podelil sa o naše odporúčania s odvetvím, aby sme mohli byť spolu silnejší.“
standard Prax v spoločnosti Ledger je taká, že žiadna osoba nemôže nasadiť kód bez kontroly viacerými stranami. Máme prísne kontroly prístupu, interné kontroly a viacnásobné podpisy kódu, pokiaľ ide o väčšinu častí nášho vývoja. Toto platí v 99 % našich interných systémov. Každému zamestnancovi, ktorý odíde zo spoločnosti, bude odobratý prístup ku každému systému Ledger.
Išlo o nešťastný ojedinelý incident. Je to pripomienka, že bezpečnosť nie je statická a Ledger musí neustále zlepšovať svoje bezpečnostné systémy a procesy. V tejto oblasti Ledger zavedie prísnejšie bezpečnostné kontroly, ktoré prepoja naše zostavy pipeline ktorý implementuje prísne software supply chain security do distribučného kanála NPM."
Zdá sa, že účet NPM s oprávneniami na publikovanie nových verzií knižnice mal menej prísne bezpečnostné kontroly ako iné časti ich softvérovej infraštruktúry. Ojedinelý incident spôsobený smolou?
Záver listu je viac standard časť o spolupráci s úradmi, „vyhlásenie pod kontrolou“ a ospravedlnenia:
„Spoločnosť Ledger sa spojila s úradmi a robí všetko pre to, aby pomohla pri vyšetrovaní. Ledger bude podporovať dotknutých používateľov pri hľadaní tohto páchateľa, jeho postavení pred súd, sledovaní finančných prostriedkov a spolupráci s orgánmi činnými v trestnom konaní s cieľom pomôcť získať späť ukradnutý majetok od hackera. Hlboko ľutujeme udalosti, ktoré sa dnes odohrali pre dotknutých jednotlivcov.“
Situácia je teraz pod kontrolou a hrozba pominula. Chápeme paniku, ktorú to spôsobilo v komunite a širšom ekosystéme.“
List obsahuje prílohu s časovou osou, ktorá je veľmi dobrá pre používateľov, aby pochopili, ako bol incident objavený, aké konkrétne opatrenia na obmedzenie a nápravu boli prijaté a ako budú postihnutí používatelia vymáhaní/kompenzovaní. Toto je časť, ktorá sa najviac týka mincí:
„Dnes ráno SEČ sa bývalý zamestnanec spoločnosti Ledger stal obeťou phishingového útoku, ktorý získal prístup k jeho účtu NPMJS. Útočník zverejnil škodlivú verziu súpravy Ledger Connect Kit (ktorá postihuje verzie 1.1.5, 1.1.6 a 1.1.7). Škodlivý kód použil falošný projekt WalletConnect na presmerovanie finančných prostriedkov do hackerskej peňaženky.“ Technologické a bezpečnostné tímy spoločnosti Ledger boli upozornené a oprava bola nasadená do 40 minút od zistenia. Škodlivý súbor bol aktívny približne 5 hodín, domnievame sa však, že obdobie, počas ktorého boli finančné prostriedky vyčerpané, bolo obmedzené na menej ako dve hodiny.Spoločnosť Ledger sa koordinovala so spoločnosťou WalletConnect, ktorá rýchlo zablokovala podvodný projekt. Originálna a overená sada Ledger Connect Kit verzie 1.1.8 sa teraz šíri a je bezpečná na používanie.
Pre vývojárov, ktorí vyvíjajú a interagujú s kódom Ledger Connect Kit: vývojový tím connect-kit na projekte NPM má teraz prístup iba na čítanie a z bezpečnostných dôvodov nemôže priamo odosielať balík NPM. Interne sme rotovali tajné kódy, aby sme ich mohli zverejniť na Ledger GitHub. Vývojári, prosím, znova skontrolujte, či používate najnovšiu verziu 1.1.8.
Ledger spolu s Wallet Connect a naši partneri nahlásili adresu peňaženky útočníka. Adresa je teraz viditeľná na Chainalysis. Tether zmrazil USDT zlého aktéra.“
Podľa toho bolo obmedzenie rýchle, keďže podvodný projekt WalletConnect na presmerovanie finančných prostriedkov bol okamžite deaktivovaný. Ale aj napriek tomu boli niektoré peňaženky vyčerpané.
Dôsledky: Ako reagoval priemysel
Niektorí používatelia vyjadrili hnev na Ledger za to, že nezabránil kompromitácii, zatiaľ čo iní varovali pred nebezpečenstvom spoliehania sa na knižnice tretích strán.
Kyberbezpečnostný priemysel má v kybercoinoch svoje miesto. Známe sú kampane na vyčerpávanie peňaženiek, ktoré využívajú najmä phishingové stránky na oklamanie koncových používateľov. Bežný SaaS biznis (Scam-as-a-Service) má špecializovaných aktérov na vyčerpávanie peňaženiek, ako napríklad podvodných predajcov. Inferno Drainer ktorý ohlásené zastavenie prevádzky v novembri 2023. Podľa nedávnej aktivity pozorovanej v Dune sa zdá, že ide o falošnú vlajku. @scamsnifferSchéma, ktorú dodržiavajú, bola vysvetlená v tomto príspevku Group-IB:
Niektorí analytici naznačili, čo útok neumožnilo. Toto komentár od používateľa brianddk v tikete v repozitári projektu nám poskytuje prehľad o hlavnej príčine:
A komentár od iného používateľa, HenryQW, poukázal na druhú vec, ktorá umožnila šírenie škodlivých verzií prostredníctvom CDN:
Je príliš skoro na to, aby sme videli dlhodobé iniciatívy na zvýšenie odolnosti front-endov krypto peňaženiek voči phishingovým útokom. Zdá sa, že bude potrebné dodržiavať standard podobné tomu, čo PA-DSS čo robí pre dodávateľov softvéru alebo platobných aplikácií, by mohlo byť v kryptopriemysle vítané.
A teraz, poučenie!
Je úžasné, ako hardvérová peňaženka, stelesnenie krypto bezpečnosti, bol porušený jednoducho zneužitím prístupu k prihlasovacím údajom NPM „bývalého zamestnanca“ spoločnosti Ledger (pravdepodobne používateľské meno/heslo bez ochrany 2FA alebo prístupový token). Tento incident slúži ako výrazná pripomienka, že keď ste pod paľbou kritiky, vaša softvérová infraštruktúra musí byť chránená s rovnakou starostlivosťou ako vaše softvérové alebo hardvérové produkty.
Väčšina útokov v rámci dodávateľského reťazca softvéru začína napadnutím interného účtu (často vývojára alebo devops inžiniera). Útočníci sa potom buď presunú laterálne, aby narušili interné systémy v softvérovej infraštruktúre, ako napríklad CI/CD systém alebo nástroje nasadenia, alebo sa im podarí pridať škodlivú logiku do úložísk zdrojového kódu, čo by sa dalo odhaliť, ak je zavedená správna manipulácia so zmenami s ochranou vetiev a kontrolami kódu. Útočníci však nemusia ísť tak hlboko, keď je cieľom populárna knižnica publikovaná vo verejnom registri, najmä ak môžu získať prístup k publikovaniu (zápisu) poverení. A to sa stalo aj v tomto útoku.
2FA overenie, konkrétne s použitím robustných prvkov, ako sú bezpečnostné kľúče, sa obmedzuje riziko pri interaktívnych operáciách. Pre CI/CD pipelineprístupové tokeny s obmedzeným prístupom uložené ako CI/CD Tajomstvo je bežný postup (a prístupový token by nemal byť prezradený). Zdá sa, že zamestnanec bohužiaľ nemal robustnú dvojakú autentifikáciu (2FA). NPM to umožňuje. organizácie na presadzovanie 2FA (ale toto je voliteľné, nie predvolené), čo by Ledger pravdepodobne mal mať. A nezabudnite pridať príslušné zrušenie poverení postupy pre bývalých zamestnancov, najmä s prístupom k tak kritickým zdrojom, ako je rozsah NPM, ktorý organizácia vlastní.
Pripnutie verzie pre závislosti s revidovanými verziami je postup, ktorý zmierňuje šírenie škodlivých závislostí. V kontexte incidentu Ledger sú verzie knižnice, ktoré connect-kit-loader vzal z CDN mal byť pripnutý a „neverte ničomu, čo CDN hodí“. Mať overenie kontrolného súčtu napr. prostredníctvom SRI (alebo dokonca schémy digitálneho podpisu, ktorá tiež overuje zdroj) by sa malo použiť pri sťahovaní z CDN pre dynamické načítavanie kódu.
Zvyšok je príbeh.
V prípade konvenčnejších phishingových kampaní zameraných na používateľov peňaženiek je otázkou: Čo vedie používateľov k tomu, aby padli do pascí nastražených zločincami a potvrdili transakcie, ktoré nikdy nemali v úmysle vykonať? Phishingové stránky v tejto oblasti sú dobre navrhnuté a presvedčivé, napodobňujú populárne krypto značky a tiež ponúkajú bezplatné tokeny. razenie NFT a ďalšie odmeny. Zabrániť tomu, aby používatelia padli do takýchto pascí, je problém, ktorý hľadá riešenie.
A aby som nezabudol súvisiace kryptohacking útoky, všeobecnejšia hrozba, kde útočníci preberajú cloudové infraštruktúry na prevádzku ťažiarov kryptomien, často súkromných mincí ako Monero XMR a Zcash, so skrytou históriou transakcií. Kryptojacking je relevantný, pretože môže ovplyvniť AKÚKOĽVEK organizáciu a hoci zisk pre útočníka môže byť nízky, náklady pre obeť môžu byť vysoké (Sysdig spomenutý v táto správa že obeť stojí 53 dolárov za každý vyťažený dolár pre útočníka).
Referencie
- Lístok “[SÚRNE] Toto úložisko používa škodlivú verziu balíka npm @ledgerhq/connect-kit, 1.1.7„v repozitári Github.“
- List od generálneho riaditeľa spoločnosti Ledger k incidentu, 14. decembra 2023.
- Správa o bezpečnostnom incidente, od Ledgera, 20. decembra 2023.
- Zneužitie Ledgeru ohrozuje DeFi; Sushi vyzýva: „NEINTERAKTUJTE SO ŽIADNYMI dAppmi“, uverejniť v CoinDesk od Olivera Knighta, 14 Dec 2023.
- Útok dodávateľského reťazca na súpravu Ledger Connect: Analýza dopadu a preventívne opatreniaPríspevok od SlowMist o útoku, december 2023.
- Bezpečnostné koncepty Web3: Vyčerpávanie peňaženiek, od Jammela Weavera, v Rektify AI, júl 2023.
Pozrite si našu video ukážku





