Project

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

[M-01] Users who created a new DAO memberships cannot update DAO membership

Summary

Any user can create a new DAO membership. Users are unable to update their membership using MembershipFactory::updateDAOMembership because of access modifier onlyRole(EXTERNAL_CALLER) applied to the method.

Vulnerability Details

function updateDAOMembership(string calldata ensName, TierConfig[] memory tierConfigs)
external onlyRole(EXTERNAL_CALLER) returns (address) {
address daoAddress = getENSAddress[ensName];

Impact

A user cannot modify their own created DAO membership. This violates the main functionality of the protocol.

Tools Used

Manual analysis

Recommendations

Remove the onlyRole(EXTERNAL_CALLER)modifier so that users can update DAO memberships

-function updateDAOMembership(string calldata ensName, TierConfig[] memory tierConfigs)
- external onlyRole(EXTERNAL_CALLER) returns (address) {
+function updateDAOMembership(string calldata ensName, TierConfig[] memory tierConfigs)
+ external returns (address) {
Updates

Lead Judging Commences

0xbrivan2 Lead Judge 8 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

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