Kort forklart
Risiko for feil eller manipulert prisdata brukt av smartkontrakter.
Hovedpunkter
- Oracle risk oppstår når smartkontrakter mottar feilaktige eller manipulerte data fra orakler.
- Flere store DeFi-angrep, som bZx i 2020 og Mango Markets i 2022, skyldtes oracle-manipulasjon.
- Desentraliserte orakler som Chainlink reduserer risikoen, men eliminerer den ikke helt.
- Som investor bør du sjekke hvilke orakler en plattform bruker og om de har flere datakilder.
- Flashlån kan forsterke oracle-angrep ved å tillate angripere å manipulere priser midlertidig.
Hva er oracle risk?
Oracle risk er en av de mest undervurderte risikoene i desentralisert finans (DeFi). Kort fortalt handler det om faren for at en smartkontrakt får inn feil eller manipulert data fra omverdenen. Siden smartkontrakter ikke kan hente informasjon utenfor blokkjeden på egen hånd, er de avhengige av orakler – tjenester som henter inn data (som aksjekurser, værdata eller valutakurser) og leverer dem til kontrakten.
Hvis oraklet rapporterer en feil pris, kan smartkontrakten utføre utilsiktede handlinger. For eksempel kan en utlånsprotokoll likvidere en låntakers sikkerhet til feil tidspunkt, eller en syntetisk aksjeplattform kan gi feil utbetaling. Oracle risk er derfor en systemrisiko som kan føre til store tap for både protokoller og enkeltinvestorer.
I praksis kan feilene skyldes tekniske problemer, bevisst manipulering eller svakheter i oraklets design. For norske investorer som deltar i DeFi, er det viktig å forstå at denne risikoen er reell og kan ramme selv de mest etablerte plattformene.
Forstå oracle risk
For å forstå oracle risk må man først vite hvordan orakler fungerer. Et oracle er en tredjepartstjeneste som henter data fra en ekstern kilde (for eksempel en børs som Binance) og sender dem til en blokkjede. Dataene lagres ofte i en smartkontrakt som andre kontrakter kan lese. Dette gjør at DeFi-applikasjoner kan reagere på virkelige hendelser, for eksempel endringer i aksjekurser.
Risikoen oppstår når oraklet er sentralisert eller har for få datakilder. Hvis en angriper klarer å manipulere dataene før de når blokkjeden, kan vedkommende utnytte smartkontrakten. For eksempel kan en angriper bruke et flashlån for å påvirke prisen på en kryptovaluta, slik at oraklet registrerer en falsk pris. Deretter kan angriperen handle på denne falske prisen før den korrigeres.
Et kjent eksempel er bZx-angrepet i 2020, der en angriper manipulerte prisen på ETH via et orakel og tjente over 350 000 USD. Slike hendelser viser at oracle risk ikke bare er teoretisk – det har ført til konkrete tap på flere milliarder kroner totalt.
Hvordan fungerer oracle risk?
Oracle risk fungerer i flere trinn. Først må en smartkontrakt be om en bestemt datatype, for eksempel prisen på Bitcoin i USD. Oraklet henter prisen fra en eller flere kilder (som Coinbase, Kraken etc.) og sender den tilbake til kontrakten. Hvis oraklet kun bruker én kilde, blir det et svakt punkt. Angriperen kan da manipulere den kilden, for eksempel ved å plassere store salgsordrer på én børs for å presse prisen midlertidig.
Når den falske prisen er registrert på blokkjeden, kan smartkontrakten utføre handlinger basert på den. For eksempel kan en utlånsprotokoll tillate en låntaker å ta ut mer enn sikkerheten tilsier, fordi prisen på sikkerheten er overvurdert. Når prisen korrigeres, blir lånet underdekket, og protokollen kan tape penger.
En annen mekanisme er «oracle frontrunning». Hvis en angriper vet at et oracle snart skal oppdatere prisen, kan de handle før oppdateringen for å tjene på forskjellen. Dette krever innsikt i oraklets oppdateringssyklus, men har blitt sett i praksis. For investorer betyr dette at selv om du ikke selv bruker orakler, kan verdien av dine investeringer i DeFi-protokoller påvirkes av oracle risk.
Historisk bakgrunn
Oracle risk ble først et stort tema under DeFi-sommeren 2020, da flere protokoller ble angrepet. I februar 2020 ble bZx-protokollen utnyttet to ganger på kort tid, med tap på til sammen over 600 000 USD. Angriperen brukte et flashlån for å manipulere prisen på ETH via oraklet Kyber Network. Dette viste hvor sårbare tidlige DeFi-protokoller var.
I oktober 2020 ble Harvest Finance angrepet via oracle-manipulasjon, med tap på rundt 24 millioner USD. Angriperen utnyttet en svakhet i prisfeeden for USDC og USDT. Hendelsen førte til at mange protokoller begynte å bruke desentraliserte orakler som Chainlink, som samler data fra flere kilder.
I 2022 ble Mango Markets på Solana angrepet med et lignende angrep, der angriperen manipulerte prisen på MNGO-tokenet og stjal over 100 millioner USD. Dette var et av de største oracle-angrepene noensinne. I 2023 ble Euler Finance angrepet, delvis på grunn av oracle-svakheter, med tap på nesten 200 millioner USD. Tabellen under viser noen av de største oracle-relaterte angrepene.
Praktisk eksempel
La oss ta et norsk eksempel. Du har investert i en DeFi-plattform som tilbyr lån i norske kroner (NOK) mot sikkerhet i Ethereum (ETH). Plattformen bruker et oracle for å fastsette ETH-prisen i NOK. Anta at ETH egentlig er verdt 20 000 NOK, men oraklet feilaktig viser 22 000 NOK på grunn av en midlertidig manipulering på en liten børs.
En angriper utnytter dette: de setter inn 1 ETH som sikkerhet, men får låne 18 000 NOK (basert på den falske prisen). I virkeligheten skulle maksimalt lån ha vært 16 000 NOK (80 % av 20 000). Angriperen tar ut lånet og forsvinner. Når oraklet korrigeres til 20 000 NOK, er lånet underdekket: 1 ETH er bare verdt 20 000 NOK, men lånet er på 18 000 NOK. Plattformen må dekke tapet fra felles midler, noe som rammer alle investorer.
Dette eksempelet viser hvordan oracle risk kan føre til at vanlige investorer taper penger uten å ha gjort noe galt. Derfor er det viktig å velge plattformer som bruker flere uavhengige orakler, har tidsforsinkelser eller bruker konsensusmekanismer.
Fordeler og ulemper
Orakler er helt nødvendige for at DeFi skal fungere. Uten dem ville smartkontrakter være isolert fra omverdenen og kunne ikke reagere på prisendringer, værdata eller andre eksterne hendelser. Fordelen er at de muliggjør avanserte finansielle produkter som syntetiske aksjer, forsikringer og utlån.
Ulempen er at de introduserer et sentraliseringspunkt. Selv desentraliserte orakler som Chainlink har en viss grad av tillit til nodeoperatører. Hvis et flertall av nodene blir kompromittert, kan dataene manipuleres. I tillegg er orakler ofte trege – det kan ta flere sekunder eller minutter før dataene oppdateres, noe som gir rom for angrep.
En annen ulempe er kostnad. Å hente data fra orakler koster transaksjonsgebyrer (gas fees). For små transaksjoner kan dette gjøre DeFi uøkonomisk. For norske investorer som handler med små beløp, kan oracle-kostnadene spise opp gevinsten. Samlet sett er orakler et tweegget sverd: de muliggjør innovasjon, men krever nøye risikostyring.
Vanlige misforståelser
En vanlig misforståelse er at oracle risk bare rammer store protokoller. I virkeligheten kan selv små DeFi-applikasjoner bli utnyttet, spesielt hvis de bruker billige eller sentraliserte orakler. Angripere søker ofte etter protokoller med svake orakler, uavhengig av størrelse.
En annen misforståelse er at desentraliserte orakler er 100 % sikre. Selv om Chainlink og lignende tjenester reduserer risikoen betraktelig, er de ikke immune. I 2021 ble en Chainlink-node midlertidig kompromittert, men angrepet ble fanget opp før det førte til tap. I tillegg kan det oppstå konsensusfeil der nodene ikke blir enige om riktig pris.
Noen tror også at oracle risk bare handler om priser. Men orakler kan også levere andre typer data, som valgresultater, værdata eller sportsresultater. Hvis disse dataene er feil, kan smartkontrakter utbetale feil premie i forsikringsprotokoller eller avgjøre veddemål feil. Oracle risk er derfor bredere enn bare prisdata.
Oppsummering
Oracle risk er en sentral risiko i DeFi-økosystemet som norske investorer bør være klar over. Det handler om at smartkontrakter er avhengige av eksterne datakilder, og hvis disse kildene svikter eller manipuleres, kan det føre til store tap. Historien viser at selv de største protokollene har blitt rammet, med tap på titalls millioner dollar.
For å beskytte deg kan du velge plattformer som bruker desentraliserte orakler med flere datakilder, og som har innebygde sikkerhetsmekanismer som tidsforsinkelser eller nødbremser. Du bør også følge med på sikkerhetsrapporter og revisjoner av protokollene du investerer i.
Husk at oracle risk ikke kan elimineres helt, men kan reduseres gjennom god risikoanalyse. Som investor er det lurt å spre risikoen over flere protokoller og være forsiktig med plattformer som lover for godt å være sant. Med denne kunnskapen kan du ta mer informerte beslutninger i den spennende, men risikofylte verdenen av DeFi.
Eksempel på oracle risk
Hvis en oracle viser at ETH prisen er 22 000 NOK i stedet for 20 000 NOK, kan en angriper låne mer enn de har krav på, og protokollen taper penger.
Grafer og nøkkelfakta
Totale tap fra oracle-angrep per år
Vis data
| Tap (millioner USD) | |
|---|---|
| 2020 | 24.6 |
| 2021 | 5 |
| 2022 | 100 |
| 2023 | 200 |
FAQ
Hva er forskjellen på oracle risk og smartkontraktsrisiko?
Smartkontraktsrisiko handler om feil i selve koden, mens oracle risk handler om feil i dataene som mates inn i koden. Begge kan føre til tap, men årsakene er forskjellige.
Kan oracle risk unngås helt?
Nei, det er umulig å eliminere oracle risk fullstendig fordi smartkontrakter alltid vil være avhengige av eksterne data. Men risikoen kan reduseres betydelig ved å bruke desentraliserte orakler, flere datakilder og tidsforsinkelser.
Hvordan påvirker oracle risk norske investorer?
Norske investorer som deltar i DeFi kan tape penger hvis en protokoll de har investert i blir angrepet via oracle-manipulasjon. Det er derfor viktig å undersøke protokollens orakelbruk før man setter inn penger.
Er Chainlink 100% trygt mot oracle risk?
Chainlink er en av de mest sikre oracle-løsningene, men ingen løsning er 100% trygg. Det har vært tilfeller der Chainlink-noder har blitt kompromittert, men angrepene har blitt stoppet før tap oppstod.
Artikkelen er basert på allment kjente hendelser innen DeFi og orakelrisiko. Ingen spesifikke kilder er sitert.
Kommentarer
Tips: Forslag til forbedringer kan automatisk oppdatere artikkelen (kun svar på hovedtråd).
Ingen kommentarer ennå.