The redeem function in the VaultRouterBranch
contract contains a flawed check that determines whether the change in credit capacity exceeds the locked credit capacity before the state transition.
The following comment is given:
However, the actual check is performed as follows:
The current implementation uses a less-than-or-equal-to comparison, which may allow transactions that lead to insufficient unlocked credit capacity.
Allowing the transaction to proceed under the current logic could lead to scenarios where the unlocked credit capacity is insufficient, resulting in the inability to fulfill future withdrawal requests or other operations that depend on available credit.
Manual Review
Change the comparison in the check from less-than-or-equal-to (lte
) to greater-than (gt
):
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.