The updateMembershipImplementation function allows updating the implementation contract without storage layout validation, potentially corrupting new DAOs' storage.
Location: MembershipFactory.sol
, updateMembershipImplementation()
function and MembershipERC1155.sol
storage layout
No storage gaps implemented in MembershipERC1155 contract
Current implementation permits storage layout changes without validation
New implementation with added storage variables would shift existing storage slots
Example of vulnerable update:
HIGH - New DAOs created after implementation update will have corrupted storage, breaking access controls and profit tracking.
Manual code review
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.