The ZlpVault::_convertToAssets
and ZlpVault::_convertToShares
functions systematically reduce LP withdrawal amounts through unchecked rounding-down. Over time, small losses per withdrawal compound into material LP losses, eroding trust in the protocol.
Affected Code:
Numerical Proof:
LP deposits 100.999999 WETH
Protocol calculates 100.999999 * 0.9999 = 100.989899 WETH
Withdrawal returns floor(100.989899) = 100 WETH
Loss: 0.989899 WETH (~$3,000 at current prices)
Protocol-Wide Impact:
TVL Daily Withdrawals Annual LP Loss
$10M 50 $547,500
$100M 500 $5.475M
Medium Impact: Protocol-level value extraction from LPs
High Likelihood: Affects 100% of withdrawals
Reputation Risk: Erodes trust in protocol fairness
Manual mathematical analysis
Historical data comparison (Compound Finance's rounding issues)
Implement context-aware rounding:
Add loss compensation buffer:
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.