The contract applies inconsistent calculations when adjusting balances, which can lead to incorrect token totals. This mismatch may cause the total supply to be out of sync with individual balances.
Below is a snippet of the balanceOf and totalSupply functions from DebtToken.sol:
balanceOf() scales up by multiplying with getNormalizedDebt().
totalSupply() scales down by dividing by getNormalizedDebt().
This mismatch leads to inconsistencies, causing the total supply to be misaligned with the sum of individual balances.
The inconsistent scaling of balances can create discrepancies between the total supply of debt tokens and individual user balances. In the lending pool, incorrect debt token balances could result in incorrect amount of minting and burning of debt token, affecting borrowing and repayment mechanics. These issues could eventually, disrupt the protocol’s ability to maintain a healthy debt market, bad debt accumulation, and improper liquidation.
Manual Review
Ensure Consistent Scaling: Both balanceOf() and totalSupply() should either multiply or divide by getNormalizedDebt().
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.