The updateMembershipImplementation function allows an administrator to set a new implementation contract address. However, it does not verify if newImplementation differs from the current membershipImplementation. This could lead to unnecessary updates without changing the membershipImplementation address.
The updateMembershipImplementation function currently only checks that the newImplementation address is not the zero address. It does not ensure that newImplementation is different from the existing membershipImplementation address. This could allow redundant updates that don’t alter the state, wasting gas and creating unnecessary entries in the contract's history.
This vulnerability is rated as Low. While it does not present a critical security issue, it could lead to gas inefficiencies and clutter the transaction history with redundant updates that do not change the implementation address.
None
Add a check to confirm that newImplementation is different from the current membershipImplementation. The function can be updated as follows:
This adjustment will prevent unnecessary updates and ensure that membershipImplementation is only changed when a new address is provided.
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.