Steadefi

Steadefi
DeFiHardhatFoundryOracle
35,000 USDC
View results
Submission Details
Severity: low
Invalid

Concurrent Deposits Can Produce Redundant Liquidity

Summary

The addLiquidity() function does not implement any locking mechanisms or checks to prevent duplicate calls adding liquidity concurrently.

Vulnerability Details

If two transactions both call addLiquidity() at the same time, both could succeed, effectively depositing the combined amounts rather than the intended individual amounts.

function addLiquidity(
GMXTypes.Store storage self,
GMXTypes.AddLiquidityParams memory alp
) public returns (bytes32) {
return GMXWorker.addLiquidity(self, alp);
}

Reproduction Steps:

  1. Have two unrelated accounts call addLiquidity() simultaneously

  2. Verify liquidity totals include duplicate amounts

Impact

Actual liquidity levels may exceed recorded amounts

Tools Used

Manual Review

Recommendations

Actual liquidity levels may exceed recorded amounts

Updates

Lead Judging Commences

hans Lead Judge almost 2 years ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.