Polymarket has emerged as a prominent prediction market platform and one of the fastest-growing applications in DeFi. To achieve low-latency trading, it adopts a hybrid architecture that matches orders off-chain but settles them on-chain for final execution. This design creates a consistency gap we call Ghost Fills: an order that is successfully matched off-chain may later fail during on-chain settlement. To understand the security implications of this gap, we investigate such failed settlements by building GhostHunter, which reconstructs them from on-chain traces and attributes them to concrete attack patterns. Across 2,037,304 reverted matchOrders() transactions, we find that attackers exploit the time gap between matching and settlement to invalidate already matched orders before they are finalized on-chain. We identify four attack vectors, Nonce Bump, Balance Drain, Allowance Revoke, and Proxy Trap, realized via 37 evolving variants. These vectors account for 994,196 of the reverts, enabling risk-free prediction, arbitrage-bot hunting, and liquidity reward manipulation. The cancelled orders spare their owners $103.7 M in net losses that settlement would have locked in, and the attacks cost the operator 2.17 M POL (about $162 K) in gas. During peak hours, up to 24.3% of transactions reverted, causing de facto DoS attacks. We also find that code derived from the flawed contract still appears in 167 independent contracts across 10 chains holding at least $23 M in user funds, extending the impact beyond Polymarket. We have disclosed our evidence to affected parties, and the issue has been partially mitigated.
翻译:暂无翻译