Project

One World
NFTDeFi
15,000 USDC
View results
Submission Details
Severity: high
Invalid

`EXTERNAL_CALLER` has too much power

Vulnerability Details

Both MembershipERC1155 and MembershipFactory have the function callExternalContract. In this case EXTERNAL_CALLER can freely make calls for DAOs. Which gives it power to steal funds and also upgrade the contracts. For a decentralized DAO marketplace this should be clearly stated, since this EXTERNAL_CALLER has all the power leading to centralization. From the current name of the variable and test methods, it also does not seem like it is based on a contract controlled by multiple signatures. This is a poor design and power should be spread.

Impact

Too much power for one address and creates a big point of failure possesing huge security risks. Also creates centralised behaviour contradicting with the product itself

Recommendations

Consider removing callExternalContract or clearly planning on how to approach this, since this is too much power for a single wallet and results in a centralised system. A nice solution might be requiring a verification from DAO creator to make the calls which can at least distribute the power.

Updates

Lead Judging Commences

0xbrivan2 Lead Judge about 1 year ago
Submission Judgement Published
Invalidated
Reason: Design choice
0xbrivan2 Lead Judge about 1 year ago
Submission Judgement Published
Invalidated
Reason: Design choice

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.

Give us feedback!