The TokenManager.sol contract features a whenNotPaused modifier that is currently only applied to the withdraw() function. This limited application of the pausing functionality could leave critical operations exposed during emergencies, potentially jeopardizing the safety of staked assets for providing liquidity.
The whenNotPaused modifier is used only in the withdraw() function, which allows users to withdraw tokens:
The tillIn() function that allow users to deposit tokens and addTokenBalance function that update to add the token balance are not protected by the pausing mechanism.
The lack of comprehensive pause functionality exposes the contract to potential issues if the contract needs to be paused for maintenance or in response to an attack. By not restricting all non-migration functions during a pause, users can still interact with the contract in ways that may not be intended during a paused state, i.e. if an emergency occurs (e.g., a security vulnerability is discovered), the contract cannot be fully paused to protect funds and prevent unauthorized transactions. This could lead to:
Unauthorized withdrawals and claims of rewards during a security breach.
Potential loss of staked tokens and rewards if a vulnerability is exploited before a fix can be applied.
Increased risk to user assets, as pausing is a common safeguard to mitigate damage during incidents.
Manual review
Apply whenNotPaused modifier to mentioned critical functions.
I believe this is informational and non-acceptable severity because: - A single pause on withdraw to be sufficient to pause the markets during times of emergencies, given that is the only function where collateral/point tokens/native ETH can be pulled from market transactions. - Every tadle market place can be switched offline by the admin via [`updateMarketPlaceStatus`](https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/core/SystemConfig.sol#L160-L171) and is checked in market actions via [`checkMarketPlaceStatus`](https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/libraries/MarketPlaceLibraries.sol#L54-L67) to be online. This prevents many major market actions including the creation, listing and settlement of offers.
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.