Hoe helpen DAO Smart Contract Audits bij het versterken van de beveiliging? PlatoBlockchain gegevensintelligentie. Verticaal zoeken. Ai.

Hoe helpen DAO Smart Contract Audits bij het versterken van de beveiliging?

Leestijd: 6 minuten

De creatie van DAO is uniek voor web3, dat gebruikmaakt van de competentie van blockchain bij het besturen van de protocollen zonder tussenkomst van gecentraliseerde entiteiten.  

DAO is sterk gecentreerd rond twee facetten: codering en gedistribueerde opslag. Dit geeft hen de mogelijkheid om te werken op basis van de collectieve beslissing van leden van de gemeenschap.

Zoals bij elk Web3-protocol, hangen er ook beveiligingsproblemen rond DAO-protocollen. 

Dit artikel is bedoeld om de onderliggende infrastructuur van DAO naar voren te brengen en richtlijnen voor het improviseren van hun slimme contractbeveiliging om aanvallen te doorstaan.   

Doel van DAO

Ethereum heeft altijd de eer om de allereerste programmeerbare blockchain te zijn. Het speelt een enorme rol bij het tot stand brengen van echte decentralisatie door ontwikkelaars in staat te stellen met code te spelen.

In dat opzicht DAO slimme contracten zijn ontworpen om te koesteren Bestuur in de keten

On-chain governance is een middel waarmee wijzigingen worden doorgevoerd in blockchain-projecten. De regels zijn gecodeerd in de protocollen en ontwikkelaars stellen wijzigingen voor door middel van code-updates. De voorgestelde wijziging wordt uitgevoerd op basis van de stemmen van de leden/deelnemers van de gemeenschap.

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>on-chain governance die het feit rechtvaardigt dat gemeenschappen puur de blockchain bedienen. 

Net als alle andere slimme contracten, zijn DAO-contracten in principe ontworpen om het proces te automatiseren en acties uit te voeren wanneer aan de vooraf gedefinieerde voorwaarden is voldaan. 

Overweeg een ERC-20 tokencontract om dit met een voorbeeld te illustreren. Het is gemaakt op basis van ERC-20-normen met informatie zoals contractadres, tokenlevering, tokennaam, voorwaarden voor tokenoverdracht, enz. 

De werking van het token wordt uitgevoerd wanneer aan de gestelde regels wordt voldaan. Evenzo is het DAO-contract gecodeerd om de werking van de organisatie te dicteren, zoals het beslissen over de fondsverdeling volgens de stemvoorstellen van de leden. 

DAO heeft bijvoorbeeld ingebouwde schatkisten. De fondsen hiervan worden uitgegeven na goedkeuring van de groep en geen enkele autoriteit heeft toegang om een ​​plan uit te voeren. 

De stemvoorstellen voor het nemen van cruciale beslissingen met betrekking tot het project zorgen ervoor dat de stem van elke deelnemer wordt gehoord, wat leidt tot meer vertrouwen en transparantie in ketenactiviteiten. 

De heersende rechten op de activiteiten van de organisaties variëren van protocol tot protocol en het is puur subjectief voor hoe DAO-codering wordt gedaan. Het is dus belangrijk om aandacht te besteden aan de heersende rechten die gebruikers op het protocol hebben voordat ze zich inschrijven voor een DAO. 

Stappen betrokken bij het opzetten van slimme DAO-contracten

De mechanica van Bestuur in de keten

On-chain governance is een middel waarmee wijzigingen worden doorgevoerd in blockchain-projecten. De regels zijn gecodeerd in de protocollen en ontwikkelaars stellen wijzigingen voor door middel van code-updates. De voorgestelde wijziging wordt uitgevoerd op basis van de stemmen van de leden/deelnemers van de gemeenschap.

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>on-chain governance wordt uitgevoerd door middel van een reeks contracten: token, gouverneur en tijdslot . Laten we eens kijken naar de rol van elk van hen. 

Token: Tokens bepalen het stemvermogen van de leden van de gemeenschap om deel te nemen Bestuur in de keten

On-chain governance is een middel waarmee wijzigingen worden doorgevoerd in blockchain-projecten. De regels zijn gecodeerd in de protocollen en ontwikkelaars stellen wijzigingen voor door middel van code-updates. De voorgestelde wijziging wordt uitgevoerd op basis van de stemmen van de leden/deelnemers van de gemeenschap.

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>on-chain governance. Het tokencontract zorgt ervoor dat de balans wordt geverifieerd om de kracht terug te halen en deelnemers in staat te stellen hun keuze over bestuursvoorstellen uit te drukken. 

Gouverneur: Het gouverneurscontract is gecodeerd met voorwaarden voor het toewijzen van macht aan tokenhouders, het type tokens dat acceptabel is, het aantal stemmen dat nodig is voor het forum, enzovoort. Ontwikkelaars kunnen echter coderen met de functiespecificaties over hoe ze willen dat de contracten presteren. 

Bovendien bevat het gouverneurscontract ook details over stemvertraging en stemvoorstellen in de code. Het dient om instructies te geven over hoe lang het stemvoorstel openstaat voor de deelnemers om te stemmen. 

Tijdslot: Het Timelock-aspect betreft de AcessControl-setup voor de voorgestelde rol, uitvoerderrol en beheerdersrol. Door de timelock-component te integreren met de governancesystemen krijgen deelnemers de vrijheid om weg te lopen als ze het niet eens zijn met de beslissing. 

Overzicht op hoog niveau over beveiligingsdreads voor DAO's. 

DAO's afhankelijkheid van slimme contracten houdt hen verantwoordelijk voor het stemmen over bestuur en het onderhoud van de schatkist. En elk van deze elementen heeft zijn eigen beveiligingsproblemen; laten we ze hieronder afwikkelen. 

Beveiligingsproblemen in smart contract

Laten we een beetje terugspoelen en terugdenken aan de bekende 'DAO-ondergang'. De belangrijkste oorzaak was de bug in de DAO-code. De hacker kon de kwetsbaarheid misbruiken en geld uit het contract halen door te maken Recursieve oproepen

Recursieve aanroep is een voorwaarde die naar zichzelf kan verwijzen en ze steeds opnieuw in een lus kan oproepen. De recursieve functie gebruikt basisgeval (if) en inductiegeval (else). Herintredingsaanvallen worden uitgevoerd door gebruik te maken van recursieve aanroepen in de code.

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>recursieve aanroepen. 

Het contract bevatte 12.7 miljoen Ether, waarvan de hacker 3.6 miljoen ETH stal door gebruik te maken van de maas in het contract.

Dit incident toont duidelijk de behoefte aan meer ervaring en experimenten met DAO-beveiliging. Hoewel DAO enorm wordt geprezen om zijn innovatie, veroorzaakte de kwaliteit van de code meer schade.

Bovendien moet de codering van de slimme contracten volledig transparant zijn om ervoor te zorgen dat geen enkele functie later een bug wordt. 

Beveiligingsproblemen bij bestuur

Er zijn meerdere manieren waarop hackers het beheer van het protocol kunnen binnendringen. Om te beginnen zijn gedecentraliseerde meldingen een manier waarop, als een hacker meldingen kan blokkeren, ze kwaadaardige voorstellen kunnen introduceren die onopgemerkt blijven door andere DAO-leden. 

Het volgende is het voorstel dat multicall-transacties vereist. Als het voorstel niet wordt beoordeeld of gecontroleerd door DAO, kan de aanvaller ze gebruiken om complexe resultaten te produceren. 

Verkeerde drempels en ongepaste tijdsloten leiden tot de mogelijkheid van slechte activiteiten. Flitsleningen zijn een andere zorg voor de veiligheid van het bestuur. Aanvallers kunnen een enorme hoeveelheid tokens lenen, waardoor ze de meeste macht hebben om een ​​voorstel door te drukken. 

De voorstellen met kwade bedoelingen roepen een ernstige bezorgdheid over de veiligheid over de wijzigingen die in het protocol zijn doorgevoerd. AAVE en Compound hebben in het verleden last gehad van dit soort hacks. 

Beveiligingsproblemen bij uitvoering

MakerDAO, gelanceerd in het Ethereum-netwerk in 2017, deed het goed. Totdat er in 2020 een marktcrash toesloeg toen de prijs van Ether met maar liefst 50% daalde. Het was het belangrijkste onderpand dat werd gebruikt in de MakerDAO en de prijscrash zorgde voor enorme liquiditeit.

MakerDAO was niet ontworpen om zo'n enorme liquidatie aan te kunnen die resulteerde in een groter financieel verlies. Hoewel de codering hier sterk was, lag de fout bij het uitvoeren van het liquidatiemechanisme. 

Vanaf dat moment werd de uitvoering van het DAO-mechanisme ook toegevoegd aan de lijst met andere bestaande beveiligingsproblemen. 

Checklist voor DAO slimme contractaudits

Veiligheid is het overheersende aspect in Bestuur in de keten

On-chain governance is een middel waarmee wijzigingen worden doorgevoerd in blockchain-projecten. De regels zijn gecodeerd in de protocollen en ontwikkelaars stellen wijzigingen voor door middel van code-updates. De voorgestelde wijziging wordt uitgevoerd op basis van de stemmen van de leden/deelnemers van de gemeenschap.

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>on-chain governance om te voorkomen dat de macht in slechte handen valt. Laten we dus, vanuit beveiligingsoogpunt, de richtlijnen zoeken voor het ontwikkelen van robuuste DAO-contracten.

Oproepen op laag niveau: Oproepen tot willekeurige contracten die willekeurige gegevens ophalen, moeten zorgvuldig worden behandeld. 

Het afhandelen van oproepen op laag niveau is lastig, omdat dit de kans op herintredingsaanvalsvectoren kan openen. Het is dus altijd een goede gewoonte om de succesvoorwaarde van de oproepen te verifiëren en vervolgens de geretourneerde gegevens af te handelen. 

ETH-bezit: Op basis van de auditbevindingen zijn er veel gevallen geweest waarin ETH niet correct wordt behandeld in governancegerelateerde contracten. Er wordt dus voorgesteld om de manier van verzenden van ETH te verzekeren wanneer de bestuurscontracten ETH vereisen.

Een andere voorzorgsmaatregel die u in acht moet nemen, is tijdens het gebruik van msg.value dat batchgewijze oproepen mogelijk maakt. De kans is groot dat dit patroon fout kan gaan. 

Zich onthouden van misbruik van Flash-leningen: Flash-leningen worden gebruikt door uitbuiters die de bestuursbeslissingen willen beïnvloeden en een aanval willen lanceren. Ze nemen flitsleningen en beveiligen de bestuursstemmen door middel van tokenholdings om een ​​bestuursbeslissing te manipuleren. 

Daarom kunt u het meten van het stemvermogen bij het huidige blok vermijden, aangezien de flitslening die wordt aangegaan voor het verkrijgen van bestuursmacht het systeem in gevaar brengt. 

Regelmatige updates: Zelfs als er niet noodzakelijkerwijs gebreken in het contract zijn, moet u altijd de markt van governance-tokens controleren en de drempel dienovereenkomstig aanpassen. Anders zouden kwaadwillenden de beslissingen kunnen overnemen.

Zorg ervoor dat u op details let tijdens het migreren en upgraden van het beheersysteem. Er zijn gevallen geweest zoals die met Uniswap. De migratie naar gouverneur Bravo veroorzaakte een contractfout die bestuursbeslissingen tijdelijk stopte. 

Vertragingen opnemen met tijdslotcontract: Tijdvertraagde acties stellen de gemeenschap in staat om de wijzigingen in het protocol te bekijken voordat ze van kracht worden. Deze vertragingen kunnen worden geïmplementeerd via Timelock-contracten. 

Protocolgerelateerde kwetsbaarheden: De software die wordt gebruikt voor het coderen van een protocol werkt op specifieke bedrijfslogica die van elkaar kan verschillen. Dat geldt ook voor de problemen die zich voordoen bij het doorvoeren van wijzigingen in dat systeem. 

In feite had het Compound-protocol een probleem vanwege de goedkeuring van een manipulatief gemeenschapsvoorstel. Daarom is het altijd goed om de code grondig te laten beoordelen door vakgenoten en onafhankelijke partijen om de kracht en deugdelijkheid van het contract te waarborgen.

QuillAudits Eminentie in DAO Smart Contract Auditing

In de huidige tijd, om een ​​systeem volledig zelffunctionerend te laten zijn, zoeken veel projecten hun weg naar inbedding Bestuur in de keten

On-chain governance is een middel waarmee wijzigingen worden doorgevoerd in blockchain-projecten. De regels zijn gecodeerd in de protocollen en ontwikkelaars stellen wijzigingen voor door middel van code-updates. De voorgestelde wijziging wordt uitgevoerd op basis van de stemmen van de leden/deelnemers van de gemeenschap.

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>on-chain governance. Het veld evolueert dus snel en bloeit volgens hun gemeenschapsbehoeften. 

De aanvallen worden ook ingewikkelder, wat zowel uitdagend als duur is. Daarom is het noodzakelijk om ervoor te zorgen dat de processen aanwezig zijn en dat de code nauwkeurig wordt gevolgd. QuillAudits voert een uitgebreide studie uit en controleert de code om mogelijke valkuilen uit te sluiten en het project te beschermen tegen kwaadaardige activiteiten.

16 keer bekeken

Tijdstempel:

Meer van Quillhash