Kritieke fout in smart contract van MakerDAO voor Dai stablecoin opgelost

Smart contracts zijn voor veel blockchainprojecten onmisbaar. Zo ook bij MakerDAO. De Dai stablecoins is compleet afhankelijk van de contracten van MakerDAO. Het is namelijk een ‘decentraal’ gebackede stablecoin.

MakerDAO en Dai

Maar als alles afhankelijk is van deze stukjes code, brengt dat ook een gevaar met zich mee. Donderdag werd duidelijk een buitenstaander de munten uit het nieuwe smart contracts van MakerDAO kon claimen.

Koop gemakkelijk en snel Bitcoin bij Bitvavo. Ga aan de slag en betaal geen handelskosten voor je eerste aankoop tot €1.000 !

De Dai is gekoppeld aan de Amerikaanse dollar. Dat betekent dat het de waarde van de dollar volgt door hier ETH als onderpand tegenover te zetten. Binnenkort gaan hier ook andere munten voor gebruikt worden. Het heeft dan de mogelijkheid tot ‘multi-collateral’.

De waarde van de Dai is dan vertegenwoordigd door een mandje verschillende tokens. Hiervoor is een nieuw smart contract nodig, dat op dit moment in ontwikkeling is.

Een onderzoeker ontdekte echter een fout in de code van dit contract voor de ‘multi collaterals’. Deze fout zat in het stukje code dat er voor zorgt dat de DAI holders de munten (die ze in onderpand hebben) terug krijgen als deze collaterals enorm in waarde zakken.

Als de waarde van de collateral te veel zakt, is de DAI niet meer volledig gebacked. Om dit allemaal in balans te houden worden er contracten geliquideerd waardoor het decentrale systeem goed blijft werken.

Twee weken terug, tijdens de dump van Bitcoin van 20%, bleek de Dai ook al moeite te hebben met de load aan liquidaties.

Eenvoudige en goedkope ‘fout’

Een white hat hacker vond in het ‘auction proces’ het probleem dat munten afgetapt konden worden slechts voor een heel klein bedrag. Hij deelde zijn bevindingen op hackerone.

[penci_blockquote style=”style-2″ align=”none” author=””]The flip contract allows for the MCD system to auction collateral in exchange for DAI. A lack of validation in the method flip.kick allows an attacker to create an auction with a fake bid value. Since the end contract trusts that value, it can be exploited to issue any amount of free DAI during liquidation. That DAI can then be immediately used to obtain all collateral stored in the end contract.[/penci_blockquote]

Volgens de onderzoeker was het heel eenvoudig: “De kosten om een aanval te doen is bijna nul (de laagst mogelijke hoeveelheid munten plus het gas voor de transactie).”

In totaal zit er voor $270 miljoen aan Ether in het smart contract voor MakerDAO. Dit is nu nog de enige cryptomunt die je als Dai holder kunt opslaan.

Het contract waar deze fout in is gevonden, is nog niet in gebruik. Het laat echter wel het potentieel van een hack zien (als de fouten niet op tijd uit de code zijn gehaald). De verwachting is dat er ook miljoenen aan multi collaterals opgeslagen gaan worden.

Maar goed, het probleem is in de kiem gesmoord: de code is begin september gepatcht, waarbij de onderzoeker een beloning van $ 50.000 verdiende.

Bron: Decrypt