Nouns DAO contest - tonisives's results

A DAO-driven NFT project on Ethereum.

General Information

Platform: Code4rena

Start Date: 22/08/2022

Pot Size: $50,000 USDC

Total HM: 4

Participants: 160

Period: 5 days

Judge: gzeon

Total Solo HM: 2

Id: 155

League: ETH

Nouns DAO

Findings Distribution

Researcher Performance

Rank: 114/160

Findings: 1

Award: $35.44

๐ŸŒŸ Selected for report: 0

๐Ÿš€ Solo Findings: 0

Initialize is not called on upgrade

The governance proposal has 2 method calls: setImplementation and setDynamicQuorumParams. However NounsDAOLogicV2.initalize is not called in end2end.test.ts

Since initialize is not called, it can be removed from the contract to save gas when deploying and clarify code. Maybe add a comment that V1 already initializes the storage and that _setDynamicQuorumParams is called on proxy upgrade.

Note1: There is NounsDAOProxyV2, that calls initialize on NounsDAOLogicV2. This proxy is used in tests only.

Note2: There doesnโ€™t seem to be extra attack surface for an uninitialized NounsDAOLogicV2 contract. All the public methods are reverted for 0x0 storage variables. And when implementation is set, the old proxy's storage will be used.

AuditHub

A portfolio for auditors, a security profile for protocols, a hub for web3 security.

Built bymalatrax ยฉ 2024

Auditors

Browse

Contests

Browse

Get in touch

ContactTwitter