Nouns DAO contest - sikorico'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: 45/160

Findings: 2

Award: $52.36

🌟 Selected for report: 0

🚀 Solo Findings: 0

QA REPORT

[QA 00] Improving precision at the following calculations by preferring a mathematical multiplication instead division

inequation of the form x / y < z can be transformed into x < z * y to increase precision.

Proof of concept:

[QA 01] Use safeTransfer instead transfer in the following locations

Proof of concept:

[QA 02] Some tokens needs approve 0 before any approve above 0

Consider using increase/decrease approve notation instead approve to deal with that.

Proof of concept:

[QA 03] Timelock is missing for the following functions

Proof of concept:

[QA 04] Use SafeMath in the following contracts to avoid unexpected overflow/underflow

Proof of concept:

[QA 05] Use two steps verification for the following contracts

Proof of concept:

[QA 06] Put hte nonReentrancy modifier first in the following functions

A best practice is to put the nonReentrancy modifier first.

Proof of concept:

[QA 07] Missing event indexers

Proof of concept:

[QA 08] Remove the name from the following unused function parameters

Proof of concept:

[QA 09] Both return statement and named return

For readability purposes consider having one of the two return options (for the following functions)

Proof of concept:

[QA 10] Not emitted event for state changes

Proof of concept:

[QA 11] Magic number, consider using named constant instead.

Proof of concept:

--

GAS REPORT

[GAS 00] Cache the array size for the following loops over array

Proof of concept:

[GAS 01] abiEncodePacked() instead abiEncode() in the following locations

Proof of concept:

[GAS 02] transferFrom(address(this), to, amount) can be changed to transfer(to, amount) to save gas

Proof of concept:

[GAS 03] Unnecessary caching of msg.sender

Proof of concept:

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