This repository has been archived by the owner on Jun 2, 2024. It is now read-only.
deepkin - [High] Token.setReservedUntilTokenId() do not recalculate existing founder's vesting allocation ids. #139
Labels
Non-Reward
This issue will not receive a payout
deepkin
high
[High] Token.setReservedUntilTokenId() do not recalculate existing founder's vesting allocation ids.
Summary
Token contract have been updated with new feature Token Reserve. This change includes new storage variable reservedUntilTokenId, new setter setReservedUntilTokenId() and a lot of other logic reworks to handle reservedUntilTokenId.
Vulnerability Detail
When setReservedUntilTokenId() called there is no logic to update existing founder's vesting allocation ids.
Steps to reproduce:
tokenRecipient[10] = founderAddress
Impact
This can can lead to inconsistency between founder's expected token in tokenRecipient[] and reservedUntilTokenId in result founder's token can be simply minted for another user as reserved with mintFromReserveTo().
Severity justification:
Marked it as High severity issue because Token Reserve is a new core functionality of this update and the impact will cause founder to lose his vesting tokens.
Code Snippet
setReservedUntilTokenId()
Tool used
Manual Review
Recommendation
Make updateFounders() public and call it during the setReservedUntilTokenId().
The text was updated successfully, but these errors were encountered: