The auction’s minimum increment logic suffers from integer division precision loss because the contract divides before multiplying:
This means bidders can submit underpriced bids that the contract accepts, undermining the auction’s increment protection and systematically reducing seller revenue.
Likelihood: Medium
The bug triggers whenever bids are not divisible.
Attackers can deliberately exploit this to save ETH while still winning.
Impact: Low
Sellers consistently lose value with each accepted underpriced bid.
Auction integrity is broken, as increment rules are not enforced correctly.
This test demonstrates a precision loss vulnerability in the bidding system's minimum increment calculation. The test proves the vulnerability exists by comparing the correct calculation with the contract's flawed implementation.
Replace the vulnerable calculation with the mathematically correct version that performs multiplication before division:
Integer division in requiredAmount truncates fractions, allowing bids slightly lower than intended.
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.