Platform: Code4rena
Start Date: 25/01/2022
Pot Size: $50,000 USDT
Total HM: 17
Participants: 39
Period: 3 days
Judge: LSDan
Total Solo HM: 9
Id: 79
League: ETH
Rank: 2/39
Findings: 2
Award: $2,755.76
🌟 Selected for report: 0
🚀 Solo Findings: 0
static
If the owner of the contract set (specifically the Factory owner), executes allowEmergencyWithdraw
after the pair is created, then the withdraw functions including the emergencyWithdraw
will not function and the funds (including the liquidity tokens), will be stuck in the contract.
N/A
N/A
There are a few possible solutions, you could technically do any of the following:
isStopped
modifier from the pair-related withdraw functions.#0 - cryptofish7
2022-02-10T23:54:28Z
Duplicate of #199
#1 - dmvt
2022-02-21T13:19:15Z
Direct loss of funds result, this is clearly high risk.
🌟 Selected for report: kirk-baird
static
The deposit function performs a check followed by an interaction, then the effect. If for some reason the rJOE token is altered to possess callbacks that go to untrusted contracts, then a user could call deposit
multiple times using re-entrancy to extract extra rewards and drain the contract.
However, because the rJOE token is a standard ERC20 without callbacks, this issue has been marked as low severity.
N/A
N/A
Follow the check-effect-interaction pattern by moving the _safeRJoeTransfer function to be after the lines setting user.amount
and user.rewardDebt
.
#0 - cryptofish7
2022-02-11T00:34:51Z
Duplicate of #127