Dok DeFi hakovi rastu, ovaj startup želi raditi...

Tijekom proteklih nekoliko godina stotine novih aplikacija i protokola za decentralizirano financiranje preplavile su mrežu Ethereum i druge lance blokova. U studenom 2021. ukupna vrijednost zaključana u svim DeFi aplikacijama dosegla je nevjerojatnih 290 milijardi dolara. 

DeFi je, u teoriji, osmišljen kako bi demokratizirao pristup financijama omogućavajući ljudima iz cijelog svijeta, iz bilo kojeg podrijetla, bez obzira tko su, da sudjeluju. Nema financijskih ili geografskih ograničenja ili centraliziranih posrednika – sve je decentralizirano, bez povjerenja i peer-to-peer. 

To je vizija koja se pokazala popularnom, s DeFi-jem koji raste brže nego što je itko mogao zamisliti. Međutim, njegov uspon zamagljen je brojnim kritičnim sigurnosnim prijetnjama zbog kojih se čini kao vrlo riskantan pothvat svakome tko nema dovoljno znanja o tome kako kripto funkcionira. 

Dok je 2021. bila velika godina za DeFi, nedvojbeno je bila još veća za hakere, s nedavnim izvješćem Chainalaysisa nalaz da su te godine ukrali ukupno 3.2 milijarde dolara vrijedne kriptovalute. Ova godina će vjerojatno biti jednako unosna za hakere. Prema najnovijem CertiK-u prijaviti, DeFi i Web3 zajedno su izgubili više od 2 milijarde dolara od hakera u prvih šest mjeseci ove godine. 

Chainalysis je rekao da su hakeri u kripto sferi migrirali dalje od novčanika i drugih ciljeva, te danas gotovo isključivo ciljaju na DeFi protokole. U prva tri mjeseca 2022., gotovo 97% svih sredstava koje su ukrali hakeri došlo je od DeFi-ja, što je porast u odnosu na 72% u 2021. i samo 30% u 2020. Kratki pregled nekih od najvećih hakiranja ove godine objašnjava zašto je DeFi postati tako popularna meta za napadače. Iznosi koje mogu ukrasti su ogromni. Najskuplji hak ove godine bio je Povreda sigurnosti Ronin Validatora. Dana 23. ožujka, osoba ili osobe odgovorne za napad uspjele su kompromitirati Sky NMavisove Ronin i Axie DAO validatorske čvorove, hakirati privatne ključeve i izvršiti nezakonita povlačenja. Ukrali su nevjerojatnih 173,600 ETH i 25.5 milijuna USDC, što ukupno iznosi 615.5 milijuna dolara, kroz samo dvije transakcije. 

Nažalost, hakiranje Ronina nije bilo samo izolirani događaj. U veljači hakeri iskoristio sigurnosnu ranjivost u Wormholeovoj provjeri potpisa, što im je omogućilo da pobjegnu sa 120,000 wETH na Solani, što je iznos koji je u vrijeme napada bio vrijedan 326 milijuna dolara. Slično, u travnju, Beanstalk protokol pala žrtva na jednodnevnu odgodu unutar $BEAN ugovora o prijedlogu upravljanja za dovršetak brzog zajma. Napadač je uspio ukrasti 70% ukupnog sjemena, izvukavši se s ukupno 181 milijun dolara. 

 

Uočavanje ranjivosti pametnog ugovora

Velika većina DeFi hakiranja događa se zbog ranjivosti u pametnim ugovorima koji pokreću protokole. Pametni ugovori su samoizvršujući dijelovi koda koji automatski obrađuju transakcije kada su ispunjeni određeni uvjeti. Oni su jedan od temeljnih elemenata DeFi-ja jer zahtjev za pouzdanim posrednikom čine suvišnim. 

Dobra vijest je da je zajednica svjesna da su pametni ugovori očita slabost u DeFi sigurnosti i poduzima korake da ih riješi. Najpouzdaniji DeFi protokoli danas sigurno će provesti sveobuhvatan revizija pametnih ugovora kako bi se utvrdilo postoje li ranjivosti. Revizije provode pouzdane tvrtke kao što su CertiK i Hacken i procjenjuju zabilježene transakcije unutar blockchain knjige kako bi se pokušale uočiti greške. 

Drugi načini identificiranja ranjivosti uključuju penetracijski testovi od strane timova sigurnosnih stručnjaka, koji pokušavaju hakirati DeFi protokole kako bi mogli obavijestiti programere kako su to učinili, dopuštajući im da zatvore sve rupe u zakonu koje otkriju. Osim toga, protokoli također mogu ponuditi "nagrade za bugove", pri čemu oni u suštini potiču sigurnost. Deseci "bijelih šešira" hakera natječu se za novčanu nagradu za prepoznavanje ranjivosti unutar protokola. Ogrtači bugova mogu biti posebno korisni jer potiču sudionike da se ponašaju kao pravi kibernetički kriminalci, što znači da će vjerojatno pokušati hakirati protokol koristeći slične metode kao što to rade pravi negativci. Ideja je da će dobri dečki otkriti sve očite podvige prije nego što budu razotkriveni u stvarnom svijetu. 

Revizije kodova pametnih ugovora i nagrade za pogreške mogu pomoći u zaštiti DeFi protokola od uobičajenih hakiranja oko neobrađenih iznimaka i ovisnosti o nalogu transakcije. Međutim, revizije nažalost nisu nepogrešive – studija Chainalaysis otkrila je da se 30% exploita ove godine dogodilo na platformama koje su bile revidirane u posljednjih 12 mjeseci. Dakle, iako revizije koda i nagrade za bugove mogu biti od pomoći, one ne daju nikakva jamstva. Kao takvi, DeFi protokoli koji upravljaju milijardama dolara u sredstvima korisnika trebali bi usvojiti robusniji pristup sigurnosti. 

 

Ponovno otkrivanje pametnih ugovora

Jedno od najuzbudljivijih rješenja je programski jezik Scrypto koji je razvio korijen, koji je blockchain protokol sloja 1 koji je napravljen posebno za DeFi. 

Korištenje električnih romobila ističe Skripto jezik temelji se na popularnom programskom jeziku Rust i zadržava većinu njegovih značajki. Međutim, posebno dodaje brojne specifične funkcije temeljene na Radix Engineu. Može se smatrati zbirkom knjižnica i proširenja za Rust koja pruža značajke orijentirane na sredstva, omogućujući logici u Rustovom stilu interakciju s sredstvima kao domaći, prvorazredni građanin. 

Najvažnija razlika Scrypta je da učinkovito uklanja pametne ugovore. Umjesto pametnih ugovora, koristi nacrte i komponente za obradu transakcija. Nacrti su kompilirani izvorni kod koji živi na blockchainu, gdje ih svatko može koristiti. Njihova je uloga pružiti "konstruktorske funkcije" za DeFi transakcije, s fleksibilnim parametrima koje drugi mogu instancirati. Općenito su prilično specijalizirani u smislu funkcionalnosti, iako mogu podržati više različitih slučajeva korištenja ovisno o tome kako su točno instancirani. Nacrti ponekad mogu funkcionirati s drugim nacrtima, raspoređeni zajedno kao "paket". 

Da biste aktivirali nacrt, on se mora instancirati pozivanjem jedne od njegovih funkcija konstruktora kako bi se dobila adresa novostvorene instance, poznate kao "komponenta". Komponente se koriste za upravljanje stanjem i mogu prikupljati, držati i distribuirati resurse u skladu s logikom pridruženom unutar nacrta koji ih je stvorio. Drugim riječima, komponente u Scryptu nalikuju pametnim ugovorima, no one proizlaze iz logike definirane unutar nacrta koji ih je iznjedrio. 

Jedinstvena arhitektura Scrypta omogućuje mu izvršavanje transakcija na vrlo različit način od običnih pametnih ugovora napisanih u Solidityju ili nekom drugom jeziku. Umjesto slanja broja ili reference na neke tokene, Radix Engine prenosi vlasništvo nad tokenima s pozivatelja na komponentu. Jednom kada ta komponenta primi kantu resursa ili više kanti, može uzeti te resurse i pohraniti ih u trezor koji drži ili u drugu kantu. Zatim, Radix Engine osigurava da pozivatelj više ne može pristupiti spremniku ili trezoru. 

Krajnji rezultat je da dApps izgrađene na Radixu imaju puno jednostavniji i sigurniji način transakcije. Da bismo bolje razumjeli kako radi, Radix nam nudi primjer stroja za kuglice koji prihvaća USD tokene u zamjenu za token koji se čuva u njegovom trezoru. 

U ovom primjeru korisnik prosljeđuje kantu od 0.25 USD metodi insertCoins komponente MyMachine. Logika nacrta vidi da je ispravna cijena plaćena, dodaje te žetone u trezor, zatim uzima 1 žličicu iz trezora i vraća je pozivatelju. Može čak poslati i sitniš ako je pozivatelj dao previše dolara. 

S Ethereumovim pametnim ugovorima koji se temelje na Solidityju mnogo je složenije i riskantnije. U istom stroju, korisnik bi pozvao pametni ugovor kako bi stroju dao dopuštenje da podiže iz njegovog novčanika u njegovo ime. Rekli bi stroju da žele unijeti 0.25 USD. Stroj bi tada pozvao USD ugovor da izvrši isplatu, a zatim pozvao gumbball pametni ugovor da pošalje gumbball korisniku. Konačno, vjerojatno bi također ažurirao internu predmemoriju broja preostalih loptica za provjeru erosa. Svaki od ovih procesa koristi pametni ugovor i svaki je stoga u opasnosti od hakiranja zbog ranjivosti pametnog ugovora. 

To je samo jednostavan primjer. Uz DeFi, transakcije mogu biti višestruko složenije, što znači da su izložene višestruko većem riziku. Sve što je potrebno jest jedna ranjivost negdje, u bilo kojem od brojnih pametnih ugovora uključenih u transakciju, da bi napadač izvršio napad. 

 

Zaključak 

Kako DeFi raste i njegova ukupna zaključana vrijednost raste, rizik od iskorištavanja samo će se povećavati. Ako postoji nešto što možemo izvući iz zapanjujuće količine kriptovalute koju su ukrali DeFi hakovi, to je da potreba za sigurnošću pametnih ugovora nikada nije bila veća. Dok revizije koda i nagrade za bugove mogu pomoći u uočavanju najočitijih ranjivosti u DeFi-ju, jasno je da bi industrija mogla imati nemjerljive koristi od radikalnog remonta temeljenog na infrastrukturi koja je osmišljena da minimizira broj potencijalnih iskorištavanja od samog početka. 

 

Izjava o odricanju odgovornosti: Ovaj je članak dostupan samo u informativne svrhe. Ne nudi se niti se namjerava koristiti kao pravni, porezni, investicijski, financijski ili drugi savjet

Izvor: https://cryptodaily.co.uk/2022/08/as-defi-hacks-soar-this-startup-wants-to-radically-overhaul-smart-contracts-to-prevent-them