Zephyrnet-logotyp

Säkerhetsincidentrapport | Huvudbok

Datum:

Datum för rapporten: 2023-12-20

Datum för händelsen: 2023-12-14

Typ av upptäckt incident: Otillåten åtkomst och skadlig kod

Sammanfattning

Ledger upptäckte ett utnyttjande med Ledger Connect Kit torsdagen den 14 december 2023. Denna exploatering injicerade skadlig kod i DApps som använde Ledger Connect Kit, vilket lurade EVM DApp-användare att signera transaktioner som dränerar deras plånböcker. Exploateringen upptäcktes snabbt och en lösning implementerades kort därefter. Under tiden föll en liten mängd användare in i attacken och undertecknade transaktioner som tömde deras plånbok.

tidslinje 

Tidslinjens timmar är detaljerade med tidszonen Central European Time (CET):

2023-12-14: Morgon: En före detta Ledger Employee blev offer för en sofistikerad nätfiskeattack som fick tillgång till deras NPMJS-konto, kringgå 2FA, med hjälp av individens sessionstoken.

2023-12-14 – 09:49 / 10:44 / 11:37: Angriparen publicerades på NPMJS (en pakethanterare för Javascript-kod som delas mellan appar), en skadlig version av Ledger Connect Kit (som påverkar versionerna 1.1.5, 1.1.6 och 1.1.7). Den skadliga koden använde ett oseriöst WalletConnect-projekt för att omdirigera tillgångar till hackares plånböcker.

2023-12-14: 1.45: Ledger blev medveten om den pågående attacken tack vare den snabba reaktionen från olika aktörer i ekosystemet, inklusive Blockaid som nådde ut till Ledger-teamet och delade uppdateringar på X.

2023-12-14: 2.18: Ledgers teknik- och säkerhetsteam larmades om attacken och en äkta version av Ledger Connect Kit-fix implementerades av Ledger-team inom 40 minuter efter att Ledger blev medveten. På grund av CDN (Content Delivery Network) och cachningsmekanismer på Internet, förblev den skadliga filen tillgänglig lite längre. Från kompromitteringen av NPMJS till den fullständiga upplösningen har cirka 5 timmar gått. Denna utökade tillgänglighet av den skadliga koden var ett resultat av den tid det tog för CDN att sprida och uppdatera sina cachar globalt med den senaste, äkta versionen av filen. Trots filens fem timmars närvaro uppskattar vi från vår undersökning att fönstret under vilket användartillgångar aktivt tömdes var begränsat till mindre än två timmar totalt.

Ledger samordnades snabbt med vår partner WalletConnect, som inaktiverade den oseriösa WalletConnect-instansen som användes för att dränera tillgångar från användarna.

2023-12-14: 2.55 Efter vår samordning frös Tether USDT för angriparen/angriparna (jfr. TX).

Grundorsaksanalys, fynd och förebyggande åtgärder
Sammanhang

Ledger Connect-Kit är ett Java Script-bibliotek med öppen källkod som tillåter utvecklare att ansluta sina DApps till Ledger-hårdvara. Den kan integreras med hjälp av Connect-Kit-loader komponent som tillåter en DApp att ladda Connect-Kit vid körning från ett CDN. Detta gör att DApp-utvecklare alltid har den senaste versionen av Connect-Kit utan att manuellt behöva uppdatera paketversioner och släppa nya versioner. CDN som används av Ledger för distributionen är NPMJS. De flesta DApps har integrerat Connect-Kit med den nämnda Connect-Kit-loadern. 

I Ledger Connect Kit-utnyttjandet hade angriparen inte vid något tillfälle tillgång till någon Ledger-infrastruktur, Ledger-kodförråd eller till DApps själva. Angriparen kunde skjuta in ett skadligt kodpaket inom CDN i stället för själva Connect-Kit. Denna skadliga Connect-Kit-kod laddades sedan dynamiskt av DApps som redan integrerar Connect-Kit-loader. 

Utnyttjandet av Ledger Connect Kit belyser risker som Ledger och branschen möter tillsammans för att skydda användare, och det är också en påminnelse om att vi gemensamt måste fortsätta att höja ribban för säkerhet kring DApps där användare kommer att engagera sig i webbläsarbaserad signering. Det var Ledgers tjänst som utnyttjades denna gång, men i framtiden kan detta hända med en annan tjänst eller bibliotek.

Grundorsak

För att kunna driva det skadliga kodpaketet på NPMJS, nätfiskade angriparen en före detta anställd för att utnyttja individens åtkomst på NPMJS. Den tidigare anställdas åtkomst till Ledgers system (inklusive Github, SSO-baserade tjänster, alla interna Ledger-verktyg och externa verktyg) återkallades korrekt, men tyvärr återkallades inte de tidigare anställdas åtkomst till NPMJS. 

Vi kan bekräfta att detta var en olycklig isolerad incident. Åtkomster till Ledger-infrastruktur av Ledger-anställda återkallas automatiskt under personalens avstigning, men på grund av hur nuvarande tekniska tjänster och verktyg för närvarande fungerar globalt kan vi inte automatiskt återkalla åtkomst till vissa externa verktyg (NPMJS ingår), och dessa måste hanteras manuellt med en checklista för anställdas offboarding för varje individ. Ledger har en befintlig och regelbundet uppdaterad offboardprocedur där vi tar bort avgående anställda från alla externa verktyg. I det här enskilda fallet återkallades inte åtkomsten manuellt på NPMJS, vilket vi beklagar, och granskar med en extern tredjepartspartner. 

Detta var en sofistikerad attack utförd av angriparen. Trots att ha tvingat fram tvåfaktorsautentisering (2FA) på det NPMJS-riktade kontot, vilket normalt skulle avskräcka många försök, kringgick angriparen denna säkerhetsåtgärd genom att utnyttja en API-nyckel kopplad till den tidigare anställdes konto. 

Denna specifika attack gjorde det möjligt för angriparen att ladda upp en ny skadlig version av Ledger Connect Kit som innehöll vad som kallas Angel Drainer malware. Angel Drainer är en malware as a service som är speciellt utformad för att skapa skadliga transaktioner som dränerar plånböcker när de signeras. Det är en komplett infrastruktur specialiserad på EVM-kedjor som använder smarta kontrakt på begäran och utformar skräddarsydda transaktioner för att maximera skadan.

Tyvärr, NPMJS.com tillåter inte multiauktorisering eller signaturverifiering för automatisk publicering. Vi arbetar med att lägga till ad hoc-mekanismer som upprätthåller ytterligare kontroller i implementeringsstadiet.

Resultat

Detta var en väl förberedd attack utförd av erfarna angripare. Nätfisketekniken som implementerades fokuserade inte på referenser, vilket är vad vi ser i de flesta Front-End-attacker som påverkar ekosystemet, utan istället arbetade angriparen direkt på sessionstoken. 

Den skadliga programvaran som användes var Angel Drainer, och Ledger-säkerhetsteamet har under de senaste tre månaderna sett en ökning av kriminella aktiviteter som använder denna skadliga programvara (se detta publicerade Blockaid rapport). Vi kan också se på kedjan att de stulna medlen delas: 85 % till exploatören och 15 % till Angel Drainer, vilket kan ses som en malware as a service.

Denna Angel Drainer lurar användare att underteckna olika typer av transaktioner beroende på vilken typ av tillgång den för närvarande riktar in sig på. För ERC20- och NFT-tokens ber den användare att signera godkännande och tillstånd meddelanden. För infödda tokens ber draineren användaren att underteckna antingen en falsk "anspråk"-transaktion där patentkrav Metoden sveper helt enkelt pengarna, eller enkla tokenöverföringar som senare kan sopas genom att implementera ett smart kontrakt på motsvarande adress.

Det är därför vi fortsätter att uppmuntra Clear Signing som en bransch, så att användare kan verifiera vad de ser på en betrodd skärm på sin Ledger-hårdvaruenhet. 

Avhjälpande åtgärder

Ledgers säkerhets- och teknikteam, inklusive Ledger ledningsgrupp, granskar och granskar för närvarande alla våra åtkomstkontroller på Ledger interna och externa verktyg och system som vi använder. 

Ledger kommer att förstärka sina policyer när det gäller kodgranskning, distribution, distribution och åtkomstkontroller, inklusive att lägga till alla externa verktyg till våra underhålls- och off-boardkontroller. Vi kommer att fortsätta att generalisera kodsignering när det är relevant. Dessutom genomför vi återkommande internrevisioner för att säkerställa att detta är korrekt implementerat. 

Ledger organiserar redan säkerhetsträningssessioner, inklusive phishing-träning. Det interna säkerhetsutbildningsprogrammet kommer också att förstärkas i början av 2024 för alla anställda på sina respektive avdelningar. Ledger organiserar redan regelbundna säkerhetsbedömningar av tredje part och kommer att fortsätta att prioritera dessa bedömningar.  

I början av 2024 kommer en specifik tredjepartsrevision att genomföras med fokus på åtkomstkontroll, kodpromotion och distribution. 

Dessutom kommer vi att förstärka våra infrastrukturövervaknings- och varningssystem för att kunna upptäcka och reagera ännu snabbare på framtida incidenter.

Slutligen kommer vi att dubbla ner på att förhindra blind signering, ta bort det som ett alternativ för Ledger-användare för att säkerställa yttersta säkerhetspraxis, och utbilda användare om den potentiella effekten av att signera transaktioner utan vare sig en säker visning eller att förstå vad de signerar genom att inte använda Tydlig signering.

Vi tackar återigen våra partners i ekosystemet för att de snabbt har arbetat med Ledger-teamen för att identifiera och lösa exploateringen.

plats_img

Senaste intelligens

plats_img