Category: Business Logic
[FIXED] Interest can be stolen by staking for one block before rebases
Critical Severity
Critical Impact
High Likelihood
Description
By being a creditor for the last possible block before a rebase, and then redeeming their stake in the next block, a user can accrue the vast majority of interest without contributing or exposing themselves to market risk.
Impact
A user can stake a two-block credit with a very large amount of capital to get almost all the interest without participating in the protocol mechanic.
Recommendations
Add a minimum stake period.
Remediation
The Nukem team has fixed this issue by introducing a CreditLockPayment
mechanism, default configured to 1 day, which was added in commit bec528a9↗. This ensures that creditors stay locked in their positions.