The Ghosts of Polymarket: When Off-Chain Matches Meet On-Chain Reverts
2026-06-15 • Cryptography and Security
Cryptography and Security
AI summaryⓘ
The authors studied Polymarket, a popular platform where people trade predictions. They found a problem called 'Ghost Fills,' where trades matched quickly off the platform sometimes fail later when finalized on the blockchain. By analyzing these failures with a tool they created, they uncovered that attackers use the delay between matching and settlement to cheat in different ways, causing many trades to be reversed and leading to financial losses and disruption. The issue also affects other similar contracts on multiple blockchains. The authors shared their findings, and some fixes have been made.
Polymarketprediction marketsDeFi (Decentralized Finance)off-chain matchingon-chain settlementblockchaintransaction revertsmart contractarbitragedenial of service (DoS)
Authors
Yiming Shen, Yuhan Jin, Shuohan Wu, Yanlin Wang, Jiachi Chen
Abstract
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 to concrete attack patterns. Across 1,952,440 reverted match-order 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 then identify four attack vectors from these incidents: nonce bump, balance drain, allowance revoke, and proxy trap, realized via 35 evolving variants. These vectors allow attackers to selectively revert 980,133 filled orders, enabling risk-free prediction, arbitrage-bot hunting, and liquidity reward manipulation, realizing at least \$1.49M in profit, which places \$1.78 B USD at risk and 2.17 M POL (about \$212 K) paid by operator. During peak hours, more than 24.3% of all filled orders 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.