58275 sc high account rawlocked not clear even when debt is clear
Description
Brief/Intro
Vulnerability Details
function _addDebt(uint256 tokenId, uint256 amount) internal {
Account storage account = _accounts[tokenId];
// Update collateral variables
uint256 toLock = convertDebtTokensToYield(amount) * minimumCollateralization / FIXED_POINT_SCALAR;
uint256 lockedCollateral = convertDebtTokensToYield(account.debt) * minimumCollateralization / FIXED_POINT_SCALAR;
if (account.collateralBalance - lockedCollateral < toLock) revert Undercollateralized();
account.rawLocked = lockedCollateral + toLock;
_totalLocked += toLock;
account.debt += amount;
totalDebt += amount;
}Impact Details
Solution
References
Proof of Concept
Proof of Concept
Previous57066 sc critical a malicious actor can keep calling poke at every block to prevent collateral earmarking exposing transmuter users to delayed redemptions and loss of fundsNext58480 sc low missing recipient and token binding in verifyswapcalldata leads to unauthorized fund transfers
Was this helpful?