The DSCEngine.sol contract calls external token contracts before updating state
While the risk might not be immediate since the collateral token addresses are carefully chosen, some token contracts eg USDC are up-gradable and therefore carry risk of re-entrancy vulnerability.
Upgradable token contracts pose risk of re-entrancy attack to the DSCE and other contracts that might rely on this stablecoin.
Manual review
Code at Ln 253 should come AFTER line 255, so:
Code at Ln 140 should come AFTER line 141, so:
That means that Ln 200 _revertIfHealthFactorIsBroken(msg.sender) should move to the end of function depositCollateralAndMintDsc
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.