Säkerhetsrisker i Ethereum DeFi

blogg 1NyheterUtvecklareFöretagBlockchain förklaradeHändelser och konferenserPressNyhetsbrev

Prenumerera på vårt nyhetsbrev.

E-postadress

Vi respekterar din integritet

HemBloggCodefi

Säkerhetsrisker i Ethereum DeFi

av Everett Muzzy 19 maj 2020 Upplagt 19 maj 2020

9

Tillvägagångssätt för att övervaka och skydda mot risker

2020 har visat sig vara ett kritiskt år för Ethereum DeFi-ekosystemet. Förutom att fira över 1 miljarder dollar låsta i DeFi och betydande plattforms milstolpar, har industrin varit föremål för frekventa förekomster av mindre och större säkerhetsincidenter i både nya och etablerade DeFi-applikationer.

5 DeFi-säkerhetsincidenter som hände i april: 

  • Uniswap: den 18: e stjäls $ 340 000 USD genom en återupptagsattackvektor

  • Lendf.me: den 19: e, $ 25 miljoner USD stulna genom en återupptagsattackvektor; medel utfärdas på nytt efter teamets förhandlingar med hackare.

  • Kurva: En utbytesplattform för stabila valutor, avslöjade att de hittade och löste ett fel i sUSD-reservkontraktet.

  • PegNet: En tvärkedjig DeFi-plattform PegNet drabbades av en 51% attack när 4 gruvarbetare i sitt nätverk kontrollerade 70% hashrate.

  • Hegic: 28 000 USD av likviditet låst i utgångna optionskontrakt av ett fel i kontrakt, för vilket teamet lovade att kompensera berörda användare med sina egna medel.

Uniswap och Lendf.me – The Reentrancy Attack on ERC-777

BZx och Maker-händelserna i februari och mars har täckts väl, men vi har tagit lite data och insikt i de senaste händelserna på Uniswap- och Lendf.me-protokollet, specifikt kring kompromissen med ERC-777-tokenstandarden som gjorde det möjligt för hackare att töm 25 miljoner dollar i krypto den 18 april & 19: e.

ImBTC-token är en ERC-777-token som släpptes av Tokenlon, en DEX som körs på 0x-protokollet. I både Uniswap- och Lendf.me-incidenterna utnyttjade hackaren en sårbarhet för återinträde som uppstod från inkompatibiliteten mellan ERC-777-tokenstandarden och DeFi-protokollet. I stort sett gjorde sårbarheten för reentrancy att hackaren i huvudsak kunde återanvända initiala insättningar av imBTC, vilket effektivt gav dem obegränsat kapital för att genomföra affärer eller lån.

Uniswap

Attacken möjliggjordes eftersom Uniswap V1 inte har några åtgärder för att skydda sig mot denna typ av återintensitetsattack vid interaktion med ERC-777-standarden. Totalt gjorde hackaren undan med ~ $ 300k USD i imBTC och ETH (~ $ 141k ETH + ~ $ 160k imBTC).

Intressant var att denna attackvektor inte var okänd för Uniswap eller för kryptosamhället i stort. Nästan exakt ett år före Uniswap-attacken, ConsenSys Diligence – säkerhetsrevisionstjänsten som erbjuds av ConsenSys – identifieras och publiceras ERC-777-återvinningsattackvektorn. Uniswap hade planer på att ta itu med attackvektorn, som beskrivs i deras 23 mars blogginlägg om funktionerna i Uniswap V2.

Fig 1. Uniswap imBTC Token Contract Balance

Fig 1. Uniswap imBTC Token Contract Balance

Lendf.me

Lendf.me-incidenten utnyttjade samma sårbarhet för återinträde som gjordes tillgänglig av den ofullständiga kompatibiliteten mellan utlåningsprotokollet och ERC-777-tokenstandarden, men till en mycket mer omfattande framgång. Nästan 100% av Lendf.mes medel – över 24 miljoner USD – tappades ut under attacken den 19 april.

Till skillnad från Uniswap-händelsen var de stulna medlen inte begränsade till bara ETH och imBTC. Även om majoriteten av stulna medel var WETH ($ 10,8 miljoner), kompenserade USDT och HBTC ytterligare $ 9,7 miljoner, följt av minst 16 andra polletter. Diagrammen nedan visar tillgångsfördelningen för kompromitterade medel och de månatliga tokenvolymerna på Lendf.me som ledde till attacken den 19 april.

Fig 2. Fördelning av förlorade medel per token-typ

Fig 2. Fördelning av förlorade medel per token-typ

Fig 3. Kontraktsaldo för Lendf.Me

Fig 3. Kontraktsaldo för Lendf.Me

I en oväntad händelse returnerade Lendf.me-hackaren de stulna medlen till protokollet, enligt uppgift för att de av misstag exponerat en IP-adress under attacken. Sankey-diagrammet nedan visar flöden av medel efter hacket. Fonder lämnade Lendf.me-kontraktet (grönt), gick igenom hanteraravtalet (grått) och till hackarens adress (svart). Efter att IP avslöjades överförde hackaren pengarna tillbaka till administratörsadressen Lendf.me, som sedan överförde pengarna till en återställningsadress (båda i lila). Längst till höger i diagrammet, där diagrammet flyter ut i många enskilda fondströmmar, markerar ögonblicket när Lendf.me returnerade medel till enskilda användare.

Fig 4. Fonder flöde genom Lendf.Me Incident

Fig 4. Fonder flöde genom Lendf.Me Incident

Det är fantastiskt att se hur DeFi-applikationer är kedjade ihop för en fullständig ekonomisk cykel av beteende, och hur dynamiken i hävstång, arbitrage, utlåning och handel spelade ut. Synergin mellan DEX, Loans (även Flashloans) och Oracles öppnade möjligheter för mer finansiell utveckling på Ethereum, samt sänkte barriärerna för mindre deltagare som en inkluderande finansvärld..

Vad kan vi göra för att skydda DeFi-tillgångar?

Smarta kontraktsgranskningar

Granskningstjänster kan identifiera potentiella kontraktsårbarheter genom noggrann testning och hackning av vita mössor innan ett protokoll eller funktionslansering. Även om automatiserade verktyg från tredje part kan identifiera uppsättningar vanliga sårbarheter, är dessa verktyg mest effektiva när de kombineras med revisionstjänster.

Uniswap-attacken i april förutsågs av revisionstjänsten ConsenSys Diligence. Dessutom verkar incidenterna 2020 ha utlöst en ny era av transparens bland DeFi-utvecklare när det gäller säkerhetsfrågor. En utvecklare från handelsprotokollet Hegic publicerade en öppen ”post mortem” om ett fel i hennes kod som gjorde vissa medel otillgängliga. Exchange-protokoll Loopring identifierade en front-end sårbarhet, pausade utbytet, tillkännagavs till samhället, och arbetade för att åtgärda problemet. Denna typ av transparens är avgörande för att skapa förtroende bland nya och befintliga användare och för att skala ett säkrare nätverk av DeFi-protokoll.

I takt med att DeFi-protokoll växer i antal, komplexitet och sammankoppling är det troligt att fler säkerhetsproblem och kompromisser inträffar. Även om det är beklagligt är dessa händelser avgörande för säker utveckling av eventuell ny teknik. Ju mer vi kan använda de tjänster och verktyg som finns tillgängliga för att identifiera och skydda mot dessa attackvektorer, desto mer säkert kommer människor att interagera med det framväxande öppna ekonomiska ekosystemet.

Övervaknings- och rankningsverktyg

Genom att utnyttja Ethereums blockchain öppenhet finns en mängd DeFi-relaterade övervakningsverktyg tillgängliga för allmänheten för att mer säkert interagera med ekonomiska applikationer. Codefi inspektera är ett öppen källkodsverktyg för att samla kritisk säkerhetsinformation om DeFi-protokoll, inklusive offentliga granskningar, administratörsnyckelinformation, orakelberoende och aktivitet i kedjan. Codefis DeFi-poäng är ett värde på plattformsrisk som kan jämföras mellan protokoll för att bättre informera användarnas beslut när de väljer mellan DeFi-applikationer.

Övervakning av nätverkshälsa: för enskilda användare

På utlåningsplattformar är användarnas insättningar riskerar att avvecklas när säkerhetsförhållandena sjunker under vissa trösklar på grund av prisfluktuationer. Figur 5 visar mängden medel som “bitits” på tillverkarens plattform. I november 2018 och mars 2020 likviderades över 17 miljoner USD i säkerhet på Maker när ETH-priserna nådde historiska lägsta priser (~ $ 110 / ETH i november 2018 och ~ $ 105 i mars 2020).

Med korrekta övervakningsverktyg kan användare bättre skydda sig från att vara ovilliga mottagare av automatiserade likvidationer på utlåningsplattformar. För utlåningsprodukter definieras en nödvändig säkerhetsgrad (värdet på insättningstillgångar, delningsvärde för lånade tillgångar, mätt i USD i de flesta fall), säkerhetsgränsen för valvägare. När säkerhetsvärdet sjunker sjunker förhållandet och valvet öppnas för avveckling. Användare kan spåra säkerhetsgraden och besluta att återbetala lånen eller lägga till insättningar för att hålla valvet i ett säkert skick och utanför likvidationsområdet. Övervakningsverktyg kommer att spela en viktig roll i användarnas säkra interaktion med utlåningsprotokoll om dessa verktyg tillhandahåller realtids, tillförlitliga oracle-prisflöden för olika tillgångar för att varna användarna att vidta åtgärder i förväg.

Fig 5. Likvidationsvolym på tillverkaren

Fig 5. Likvidationsvolym på tillverkaren

Ett annat mått att övervaka på utlåningsplattformar är tillgångens likviditetspool. Användningsgraden beräknas genom att dividera det totala utestående beloppet med tillgångsvolymen i likviditetspoolen. Om alla medel i poolen lånas och inte återbetalas når utnyttjandegraden nästan 100%.

En dramatisk förändring i utnyttjandegrad kan återspegla marknadsförändringar (t.ex. ETH-prisfallet i mars) som orsakar gruppreaktioner, eller flagga risken för att en hacker tappar poolen (t.ex. fallet Lendf.me). Figur 6 visar tillgångsutnyttjandegraden% för Maker, Lendf.me och andra. I mars kan vi se användningsgraden på de flesta plattformar, sannolikt som en fördröjd reaktion på marknadshändelserna den 12 mars..

Nedgången i ETH-priset orsakade att det totala utbudsvärdet (om det stöds av ETH) på de flesta av dessa protokoll föll, vilket fick användningsgraden att plötsligt öka. Under tiden, eftersom säkerhetsgraden föll på grund av ETH-priset, rensades en enorm mängd utestående skulder på grund av likvidationer. Med tiden minskade därför användningsgraden över många av dessa plattformar.

Lendf.me sticker ut som ett exempel på hur ett användningsförhållande-diagram för ett hack kan se ut. I april ser vi användningsgraden för alla polletter nästan upp till 100%, vilket indikerar hackarens utnyttjande av ERC-777-sårbarheten.

Fig 6. Tillgångsutnyttjande över protokoll

Fig 6. Tillgångsutnyttjande över protokoll

På decentraliserade börser kan storlekarna på likviditetspooler hjälpa användarna att bestämma vilken plattform som är den mer motståndskraftiga reserven. DEX är en av de viktigaste grindarna i arbitragekedjan, bevisad i bZx fall. Uniswap är en av de mest aktivt använda DEX-enheterna, och dess likviditetspooler är anslutna till många DeFi / DEX-protokollgränssnitt. Figur 7 visar storleken på likviditetspooler på Uniswap. Den kraftigaste nedgången inträffade den 18 februari, vilket var tidpunkten för den andra bZx-attacken. Den 18 februari sjönk Uniswaps likviditetspool eftersom exploateraren lånade en stor mängd WBTC på bZx via KyberUniswap-reserven. Den näst största nedgången inträffade den 13 mars när kryptomarknaderna föll. Den 13 mars sjönk Uniswap-likviditetspoolen eftersom kryptoinnehavare var oroliga för marknadsfluktuationer och drog ut stora mängder av sin likviditet från Uniswap-poolen. Trots betydande minskningar av likviditetspoolstorleken klarade Uniswap dock de senaste månadernas sårbarheter och marknadsfluktuationer mycket bra – vilket visar motståndskraften i ett DeFi-protokoll med en större likviditetspool.

Fig 7. Likviditetspoolstorlek vid Uniswap

Fig 7. Likviditetspoolstorlek vid Uniswap

En handfull verktyg – som pools.fyi – kan hjälpa DeFi-användare att hitta de största likviditetspoolerna över större DEX-enheter.

Övervakning av nätverkshälsa: för plattformar

Övervakning av risker för DeFi-plattformar innebär detektering av avvikelser. I allmänhet kan onormala beteenden kategoriseras på 5 sätt: 1) stora värdeförflyttningar, 2) höga transaktionsfrekvenser eller samtal till en funktion (särskilt de som inte är exponerade för allmänheten) inom en kort tidsperiod, 3) åtgärder med fast belopp , inträffar varannan samma fasta tidsperiod (bots), och 4) en ”superanvändares” åtgärder på flera plattformar och / eller ägande av alarmerande höga fondvolymer.

När onormalt beteende upptäcks kan protokollteam använda någon administratörskontroll utformad i det smarta kontraktet, till exempel:

  1. Bromsar för att avsluta vissa / alla funktioner i smarta kontrakt eller protokoll.

  2. Lägg till en väntande session i några stora beloppstransaktioner.

  3. Återställ misstänkta transaktioner.

För att utarbeta kategorierna av onormalt beteende:

  1. Överföringar av stora fondvärden

Åtgärder med stort värde som sker i kedjan – inklusive upplåning, insättning, handel och avveckling utöver en tröskel – bör utlösa varningar, eftersom det kan skaka en pools eller en plattforms stabilitet eller indikera misstänkta rörelser (fackhack, penningtvätt eller fiat utgång efter attack). Stablecoins kan spela en särskilt vägledande roll i stora värdeöverföringar eftersom deras värden är riktmärkta mot fiatpengar.

2. Hög frekvens av åtgärder (inklusive transaktioner eller samtal till specifika funktioner) inom ett visst tidsintervall

En hög frekvens av funktionssamtal, särskilt de som inte exponeras externt, kan vara en signal om attacker. Återinträde är en typisk attack för att tömma medel, där en funktion kallas rekursivt flera gånger inom samma transaktion. I ett mer allmänt fall, om plattformar samlar in referensstatistik om normala mätvärden för kontraktsanvändning (dvs. en funktion kommer vanligtvis att kallas “x” gånger) och övervakar transaktionerna där siffrorna är mycket högre, är det troligt att de kan fånga det onormala beteendet som så snart det händer.

Fig 8. Maker's CDP Open Over Time

Fig 8. Maker’s CDP Open Over Time

Figur 8 visar ett exempel på en högfrekvent händelse på Makers plattform. Under tredje kvartalet 2019 nådde den dagliga CDP-öppningen 8,7 tusen, vilket är långt över det historiska genomsnittet på 172 / dag. Några fler satser med höga CDP-öppningar inträffade under de följande veckorna och månaderna. Vi tror att dessa datapiggar var från kampanjer inriktning på användarförvärv, men det visar att manuell push kommer att lämna spår och vi kan övervaka det för att hålla oss vaken.

3. Fixat beteendemönster (upptäcka bots)

Det är legitim praxis för individer eller lag att bygga arbitrage-bots för att interagera med (vissa) DeFi-protokoll, men plattformsutvecklingsteamet kan ha oro för bots effekter på användarbasupplevelsen. Genom att definiera specifika regler och mönster som indikerar automatiserat botbeteende (fast antal åtgärder i varje annat fast tidsfönster) är det möjligt att bygga mekanismer för att upptäcka bots och övervaka deras inflytande på en pool.

4. Superanvändare (valar)

Aktiva valar i DeFi-protokollens användarbas kan ha betydande inflytande på systemets stabilitet. Ett annat tillvägagångssätt för allmän systematisk säkerhet är därför att förstå beteendet hos ”superanvändare” och att tänka djupare på potentiella risker.

Fig 9. Stora DeFi-användares rörelse. Diagram från Alethio Q1 DeFi-rapporten.

Fig 9. Stora DeFi-användares rörelse. Diagram från Alethio Q1 DeFi-rapporten.

Produkter för riskhantering

Blockchain-baserad försäkring har funnits ett tag, men har förts kraftigt i fokus de senaste månaderna. Nexus ömsesidigt – en blockchain försäkringsveteran som agerat som den första respondenten för offren i bZx utnyttjar – och mer nyligen Opyn har (åter) framträtt som toppaktörer i denna intilliggande DeFi-bransch och tjänat som säkringsalternativ mot de skyddade tillgångarna. Enligt Kvarteret, några andra liknande produkter att nämna inkluderar Etherisc, iXledger, VouchForMe och aigang. Dessa widgets tjänar för liknande behov samtidigt som de kan säkra som ett extra lager för varandra – Nexus-försäkring kan köpas mot Opyn-alternativ som en “återförsäkring”.

ConsenSys har lanserat Codefi Compliance, en automatiserad och smidig reglerings- och efterlevnadsplattform för digitala tillgångar. Codefi Compliance är en del av Codefis produktsvit, som tillsammans driver handel och finansiering genom att optimera affärsprocesser och digitalisera finansiella instrument. Som en nästa generations lösning för bekämpning av penningtvätt (AML) och motverkande av finansiering av terrorism (CFT) säkerställer Codefi Compliance att digitala tillgångar uppfyller lagstadgade förväntningar utan att kompromissa med marknads- och affärsbehov, oavsett jurisdiktion och design. Det är den enda efterlevnadslösningen som uteslutande är utformad för Ethereum-baserade tillgångar och byggd av ConsenSys, ledande inom Ethereum-utveckling. Codefi Compliance levererar avancerade efterlevnadsfunktioner som inkluderar KYT-ramar (Know-Your-Transaction), högriskfallshantering och rapportering i realtid.

Medvetenhet

Även om många verktyg och resurser redan har utvecklats för att hjälpa kunder att engagera sig mer säkert med DeFi, kräver ekosystemet en högre medvetenhet. När vi ser tillbaka på händelserna i februari, mars och april är det viktigt att erkänna att DeFi-utrymmet är:

  1. Fortfarande ömtåligt bland vissa protokoll. Även om ekosystemet som helhet är ganska motståndskraftigt, kan enskilda protokoll fortfarande påverkas allvarligt. I synnerhet kan begränsade volymer av likviditetspool enkelt orsaka prisnedgångar.

  2. Med förbehåll för Ethereums ”lego” -arkitektur. DeFi bor ovanpå Ethereum och förlitar sig fortfarande – åtminstone för tillfället – på hälsan och stabiliteten i ETHs pris. Detta demonstrerades särskilt under marknadshändelserna i mars.

  3. Ett framväxande och följaktligen attackerat ekosystem. Som bevisats av incidenter under de senaste månaderna skyddar blockchain-teknikens enorma möjlighet inte den från samma tendens att ha buggar och attackera vektorer som traditionell teknik har.

Nettoresultatet av alla dessa incidenter är dock positivt. Och dessa attacker är inte nya för Ethereum-samhället – vilket framgår av vågorna som DAO-attacken gjorde i kryptoekosystemet 2016. Attacker har gjort att de flesta av lagen och deltagarna bryr sig mer om säkerheten för olika produkter. Och med den medvetenheten tror vi att mer mogna mätvärden och verktyg kommer att utvecklas för att tjäna behovet och hjälpa till att skydda mot risker.

Utvecklarlagens förståelse, underhåll och förbättring av kodbaser är avgörande för hela ekosystemets hälsa och välstånd. Ogranskade gafflar av andras befintliga arbete kan leda till kritiska konsekvenser. När protokollet släpps på mainnet blir det effektivt en smekmånadspott – öppen och utsatt för alla potentiella skadliga attacker. Dessa finansiella protokoll är komplexa och laddade med värde, men ändå ganska unga och därför särskilt kapabla att kränka användarnas förtroende.

Trots dessa vågor av säkerhetsincidenter på DeFi-protokoll är branschen fortfarande överväldigande positiv om möjligheterna med DeFi och den drivkraft det ger Ethereum. Objektiv DeFi-statistik stöder positiva känslor. Som svar på säkerhetshändelser i år och ett stort marknadspress som började i mars, har låst ETH minskat från en rekordhög nivå i februari. Nivåerna har dock bara sjunkit till siffrorna i december 2019. Denna statistik, även inför högprofilerade säkerhetsincidenter, tyder på att DeFi-ekosystemet som helhet har överträffat någon punkt av “ingen återkomst”. Även om förtroendet för enskilda protokoll har lidit, det övergripande engagemanget för de framväxande paradigmerna för decentraliserad finansiering har varit starkt.

Skriven av Danning Sui och Everett Muzzy

varning

Codefi Data har ingen preferens eller fördom gentemot något av ovan nämnda projekt. Utbudet av diskuterade protokoll är begränsat och vi kommer att fortsätta arbeta med att lägga till fler i listan för att uppnå en mer helhetssyn. Den här artikeln ska aldrig användas som en guide för skadlig praxis eller handelsförslag.

DeFiIndustry Insight NyhetsbrevPrenumerera på vårt nyhetsbrev för de senaste Ethereum-nyheterna, företagslösningar, utvecklarresurser och mer.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
map