The original implementation didn't reset proposedMainWallet to address(0) when the wallet changing proposal is rejected. This resulted in no way to propose a new wallet proposal again at all.
Mitigation
commit 5766592
Since the only purpose of ManagedWallet#mainWallet is receiving SALT reward on behalf of development team, the mitigation removed ManagedWallet implementation and used immutable teamWallet address directly. There is no need to change it any more.
The mitigation resolved the original issue.
Lines of code
Vulnerability details
Comments
The original implementation didn't reset
proposedMainWallet
toaddress(0)
when the wallet changing proposal is rejected. This resulted in no way to propose a new wallet proposal again at all.Mitigation
commit 5766592 Since the only purpose of
ManagedWallet#mainWallet
is receiving SALT reward on behalf of development team, the mitigation removedManagedWallet
implementation and used immutableteamWallet
address directly. There is no need to change it any more. The mitigation resolved the original issue.Conclusion
Confirmed