The MembershipFactory::upgradeTier()
function allows users to upgrade their DAO membership tier within a sponsored DAO. However, while it mints a token in the new tier and burns two tokens from the lower tier, it fails to update the minted
count of the upgraded tier. This inconsistency between the actual token count and the minted
count stored in daos[daoMembershipAddress].tiers[tierIndex].minted
could lead to inaccurate tracking of token supply across tiers.
Due to the missing increment of the minted
count in the upgraded tier, the protocol will underestimate the actual number of minted tokens in the target tier. This could result to mismanagement of DAO Membership
Manual Review
To address this vulnerability, update the MembershipFactory::upgradeTier()
as follows:
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.