Kuinka DAO Smart Contract Audits auttaa vahvistamaan turvallisuutta? PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Kuinka DAO Smart Contract Audits auttaa vahvistamaan turvallisuutta?

Lukeaika: 6 pöytäkirja

DAO:n luominen on ainutlaatuista web3:lle, joka hyödyntää lohkoketjun pätevyyttä protokollien hallinnassa ilman keskitettyjä kokonaisuuksia.  

DAO keskittyy vahvasti kahden puolen ympärille - salaukseen ja hajautettuun tallennustilaan. Tämä antaa heille valmiudet toimia yhteisön jäsenten kollektiivisen päätöksen perusteella.

Kuten minkä tahansa Web3-protokollan kohdalla, myös DAO-protokollien ympärillä on turvallisuusnäkökohtia. 

Tämän artikkelin tarkoituksena on tuoda esille DAO:n perustana oleva infrastruktuuri ja ohjeet älykkäiden sopimusten turvallisuuden improvisoimiseksi hyökkäyksiä kestämään.   

DAO:n tarkoitus

Ethereumilla on aina kunnia siitä, että se on ensimmäinen ohjelmoitava lohkoketju. Sillä on valtava rooli todellisen hajauttamisen aikaansaamisessa, koska se antaa kehittäjille mahdollisuuden leikkiä koodilla.

Tässä suhteessa DAO älykkäät sopimukset on suunniteltu edistämään Ketjun hallinta

On-chain-hallinta on keino, jolla lohkoketjuprojekteihin tehdään muutoksia. Säännöt on koodattu protokolliin, ja kehittäjät ehdottavat muutoksia koodipäivitysten kautta. Ehdotettu muutos toteutetaan yhteisön jäsenten/osallistujien äänten perusteella.

” data-gt-translate-attributes=”[{”attribuutti”:”data-cmtooltip”, “format”:”html”}]”>ketjun sisäistä hallintoa, joka oikeuttaa sen tosiasian, että yhteisöt käyttävät pelkästään lohkoketjua. 

Kuten kaikki muutkin älykkäät sopimukset, DAO-sopimukset on periaatteessa suunniteltu automatisoimaan prosessi ja suorittamaan toimintoja, kun ennalta määritetyt ehdot täyttyvät. 

Havainnollistaaksesi esimerkkiä, harkitse ERC-20-merkkisopimusta. Se on luotu ERC-20-standardien pohjalta sisältäen tietoja, kuten sopimusosoite, tunnuksen toimitus, tunnuksen nimi, tunnuksen siirtoehdot jne. 

Tokenin toiminta suoritetaan, kun asetetut säännöt täyttyvät. Samoin DAO-sopimus on koodattu sanelemaan organisaation toimintaa, kuten päättämään varojen jaosta jäsenten äänestysehdotusten mukaisesti. 

Esimerkiksi DAO:lla on sisäänrakennetut kassat. Näistä varat käytetään konsernin hyväksynnän jälkeen, eikä yhdelläkään viranomaisella ole oikeutta toteuttaa suunnitelmaa. 

Äänestysehdotukset projektiin liittyvien kriittisten päätösten tekemiseksi varmistavat, että jokaisen osallistujan ääni kuuluu, mikä lisää luottamusta ja läpinäkyvyyttä ketjun toiminnassa. 

Organisaatioiden toimintaa koskevat oikeudet vaihtelevat protokollasta toiseen, ja se on puhtaasti subjektiivista sen mukaan, miten DAO-koodaus tehdään. Siksi on tärkeää kiinnittää huomiota käyttäjien protokollaan liittyviin hallitseviin oikeuksiin ennen DAO:n rekisteröintiä. 

DAO-älysopimusten määrittämiseen liittyvät vaiheet

Mekaniikka Ketjun hallinta

On-chain-hallinta on keino, jolla lohkoketjuprojekteihin tehdään muutoksia. Säännöt on koodattu protokolliin, ja kehittäjät ehdottavat muutoksia koodipäivitysten kautta. Ehdotettu muutos toteutetaan yhteisön jäsenten/osallistujien äänten perusteella.

” data-gt-translate-attributes=”[{”attribuutti”:”data-cmtooltip”, “format”:”html”}]”>ketjun hallinta toteutetaan joukon sopimuksia – token, ohjain ja aikalukko . Selvitetään jokaisen rooli. 

Token: Tokenit määräävät yhteisön jäsenten äänivallan osallistua Ketjun hallinta

On-chain-hallinta on keino, jolla lohkoketjuprojekteihin tehdään muutoksia. Säännöt on koodattu protokolliin, ja kehittäjät ehdottavat muutoksia koodipäivitysten kautta. Ehdotettu muutos toteutetaan yhteisön jäsenten/osallistujien äänten perusteella.

” data-gt-translate-attributes=”[{”attribuutti”:”data-cmtooltip”, “format”:”html”}]”>ketjun hallinta. Tunnussopimus varmistaa, että tasapaino tarkistetaan vallan palauttamiseksi ja antaa osallistujille mahdollisuuden ilmaista valintansa hallintoehdotuksista. 

Kuvernööri: Kuvernöörisopimus on koodattu ehdoilla, jotka koskevat vallan jakamista tokenin haltijoille, hyväksyttävien tokenien tyyppiä, foorumin vaadittavien äänten määrää ja niin edelleen. Kehittäjät voivat kuitenkin koodata ominaisuustietojen avulla, kuinka he haluavat sopimusten toimivan. 

Lisäksi kuvernöörisopimus sisältää koodissa myös äänestyksen viivästymisen ja äänestysehdotuksen yksityiskohdat. Sen tarkoituksena on antaa ohjeita siitä, kuinka kauan äänestysehdotus on osallistujien äänestää. 

Aikalukko: Timelock-näkökohta sisältää AcessControl-asetukset ehdotetulle roolille, suorittajan roolille ja järjestelmänvalvojan roolille. Aikalukkokomponentin integrointi hallintojärjestelmiin antaa osallistujille vapauden kävellä pois, jos he ovat eri mieltä päätöksestä. 

Korkean tason näkymä DAO:n turvallisuuspelkoista. 

DAO:n riippuvuus älykkäistä sopimuksista pitää heidät vastuussa hallinnon äänestämisestä ja varainhoidon ylläpidosta. Ja jokaisella näistä elementeistä on omat turvallisuusongelmansa; puretaan ne alla. 

Turvallisuusnäkökohdat älykkäässä sopimuksessa

Kelataanpa hieman taaksepäin ja muistetaan tunnettu 'DAO:n romahdus'. Pääasiallinen syy oli DAO-koodin virhe. Hakkeri pystyi hyödyntämään haavoittuvuutta ja viemään varat sopimuksesta tekemällä Rekursiiviset puhelut

Rekursiivinen puhelu on ehto, joka voi viitata itseensä ja kutsua niitä uudelleen ja uudelleen silmukassa. Rekursiivinen funktio käyttää peruskirjainta (if) ja induktiokirjainta (else). Re-entancy-hyökkäykset suoritetaan hyödyntämällä koodissa olevia rekursiivisia kutsuja.

” data-gt-translate-attributes=”[{”attribuutti”:”data-cmtooltip”, “format”:”html”}]”>rekursiiviset kutsut. 

Sopimuksessa oli 12.7 miljoonaa eetteriä, josta hakkeri varasti 3.6 miljoonaa ETH:ta hyödyntämällä sopimuksen porsaanreikää.

Tämä tapaus kuvaa selvästi tarvetta saada lisää kokemusta ja kokeilua DAO-turvallisuuden suhteen. Vaikka DAO:ta kehutaan suuresti innovaatiostaan, koodin laatu aiheutti suurempaa vahinkoa.

Lisäksi älysopimusten koodauksen tulee olla täysin läpinäkyvää, jotta mikään ominaisuus ei muutu myöhemmin virheeksi. 

Hallintoa koskevat turvallisuushuolit

On olemassa useita tapoja, joilla hakkerit voivat tunkeutua protokollan hallintaan. Ensinnäkin hajautetut ilmoitukset ovat yksi tapa, jossa hakkeri voi estää ilmoitukset, ja he voivat esittää haitallisia ehdotuksia, joita muut DAO:n jäsenet eivät huomaa. 

Seuraava on ehdotus, joka edellyttää monipuhelutapahtumia. Jos DAO ei tarkista tai tarkasta ehdotusta, hyökkääjä voi käyttää niitä monimutkaisten tulosten tuottamiseen. 

Väärät kynnykset ja sopimattomat aikalukot johtavat huonon toiminnan mahdollisuuteen. Flash-lainat ovat toinen huolenaihe hallinnon turvallisuuden kannalta. Hyökkääjät voivat lainata valtavan summan tokeneita, mikä antaa heille enemmistön vallan ajaa ehdotus läpi. 

Haitallisilla tarkoituksilla tehdyt ehdotukset herättävät a vakava turvallisuushuoli pöytäkirjaan tehdyistä muutoksista. AAVE ja Compound ovat kärsineet tämän tyyppisistä hakkeroista aiemmin. 

Täytäntöönpanon turvallisuushuolet

Ethereum-verkostoon vuonna 2017 lanseerattu MakerDAO menestyi hyvin. Kunnes markkinoiden romahdus iski vuonna 2020, jolloin Etherin hinta laski niinkin alas kuin 50 %. Se oli tärkein MakerDAO:ssa käytetty vakuus, ja hintaromahdus laukaisi valtavan likviditeetin.

MakerDAO:ta ei suunniteltu käsittelemään niin suurta selvitystilaa, joka johti suurempaan taloudelliseen tappioon. Vaikka koodaus oli täällä vahvaa, vika oli likvidaatiomekanismin toteuttamisessa. 

Siitä lähtien DAO-mekanismin toteuttaminen lisättiin myös muiden olemassa olevien turvallisuusongelmien luetteloon. 

Tarkistuslista DAO älykkäiden sopimusten auditoinneille

Turvallisuus on hallitseva näkökohta Ketjun hallinta

On-chain-hallinta on keino, jolla lohkoketjuprojekteihin tehdään muutoksia. Säännöt on koodattu protokolliin, ja kehittäjät ehdottavat muutoksia koodipäivitysten kautta. Ehdotettu muutos toteutetaan yhteisön jäsenten/osallistujien äänten perusteella.

” data-gt-translate-attributes=”[{”attribuutti”:”data-cmtooltip”, “format”:”html”}]”>ketjun sisäistä hallintoa, jotta valtaa voidaan suojata joutumasta huonoihin käsiin. Joten, turvallisuuden näkökulmasta katsottuna, etsitään ohjeet kestävien DAO-sopimusten kehittämiseen.

Matalan tason puhelut: Mielivaltaisia ​​tietoja hakevia mielivaltaisia ​​sopimuksia koskevia pyyntöjä on käsiteltävä huolellisesti. 

Matalan tason puheluiden käsittely on hankalaa, koska se voi avata mahdollisuuden paluuhyökkäysvektoreille. On siis aina hyvä käytäntö tarkistaa puheluiden onnistumisehto ja käsitellä sitten palautetut tiedot. 

ETH-omistukset: Tarkastuksen havaintojen perusteella on ollut monia tapauksia, joissa ETH:ta ei ole käsitelty asianmukaisesti hallintoon liittyvissä sopimuksissa. On siis suositeltavaa varmistaa ETH:n lähetystapa, kun hallintosopimukset edellyttävät ETH:n käsittelyä.

Toinen huomioitava varotoimenpide on msg.value, joka sallii joukkopuhelut. On mahdollista, että tämä malli voi mennä pieleen. 

Vältä flash-lainan hyväksikäyttöä: Flash-lainoihin luottavat riistäjät, jotka haluavat vaikuttaa hallintopäätöksiin ja aloittaa hyökkäyksen. He ottavat pikalainoja ja turvaavat hallintoäänet tunnusomistuksilla manipuloidakseen hallintopäätöstä. 

Voit siis välttää äänivallan mittaamista nykyisellä lohkolla, sillä hallintovallan hankkimiseen otettu pikalaina vaarantaa järjestelmän. 

Säännölliset päivitykset: Vaikka sopimuksessa ei välttämättä olisikaan puutteita, kannattaa aina tarkistaa hallintotunnusten markkinoilta ja säätää kynnysarvoa vastaavasti. Muuten se antaisi pahantahtoisten toimijoiden ottaa päätökset haltuunsa.

Varmista, että kiinnität huomiota yksityiskohtiin siirtäessäsi ja päivittäessäsi hallintojärjestelmää. Uniswapin kaltaisia ​​tapauksia on ollut. Sen siirtyminen kuvernööri Bravolle aloitti sopimusvirheen, joka pysäytti väliaikaisesti hallintopäätökset. 

Sisällytä viiveet käyttämällä aikalukkosopimusta: Viivästettyjen toimien avulla yhteisö voi tarkistaa protokollaan tehdyt muutokset ennen kuin ne tulevat voimaan. Nämä aikaviiveet voidaan toteuttaa Timelock-sopimuksilla. 

Protokollaan liittyvät haavoittuvuudet: Protokollan koodaamiseen käytettävä ohjelmisto toimii tietyllä liiketoimintalogiikalla, joka voi vaihdella toisistaan. Samoin ongelmat, joita syntyy, kun järjestelmässä tehdään muutoksia. 

Itse asiassa Compound-protokollassa oli ongelma manipuloivan yhteisön ehdotuksen hyväksymisen vuoksi. Siksi on aina hyvä, että kollegat ja riippumattomat osapuolet tarkistavat koodin perusteellisesti, jotta varmistetaan sopimuksen vahvuus ja järkevyys.

QuillAudits Eminence DAO Smart Contract Auditingissa

Nykyään, jotta järjestelmä toimisi täysin itsestään, monet projektit keksivät tapansa upottaa Ketjun hallinta

On-chain-hallinta on keino, jolla lohkoketjuprojekteihin tehdään muutoksia. Säännöt on koodattu protokolliin, ja kehittäjät ehdottavat muutoksia koodipäivitysten kautta. Ehdotettu muutos toteutetaan yhteisön jäsenten/osallistujien äänten perusteella.

” data-gt-translate-attributes=”[{”attribuutti”:”data-cmtooltip”, “format”:”html”}]”>ketjun hallinta. Joten ala kehittyy ja kukoistaa nopeasti yhteisön tarpeiden mukaisesti. 

Hyökkäykset ovat myös monimutkaistuneet, mikä on sekä haastavaa että kalliita. Siksi on tarpeen varmistaa, että prosessit ovat paikoillaan ja koodia seurataan tarkasti. QuillAudits suorittaa laajan tutkimuksen ja tarkastaa koodin sulkeakseen pois mahdolliset sudenkuopat ja suojatakseen projektin haitallisilta toimilta.

16 Näyttökerrat

Aikaleima:

Lisää aiheesta Quillhash