The script didn’t steal logins. It borrowed the access a trader already had in an open, signed-in Polymarket tab. Hudson Rock found no part of the code that sent passwords, seed phrases or private keys anywhere.
Instead it looked for the parts of the page that place orders and approve transactions, checked what the visitor held, and then took one of two routes:
- Email sign-in accounts: it sold the trader’s positions at steadily worse prices, then moved the cash out.
- Crypto wallet sign-in accounts: it sent the position tokens directly to a wallet the attackers controlled.
In both cases the code asked the account’s own signer to approve its requests and passed them to Polymarket’s relayer to submit. Hudson Rock cautions that a signing request doesn’t prove every victim approved something blindly, because some wallet providers may still show a prompt or refuse.
It was fast. Blockchain records show the attacker’s wallet collected about 28.6 million POL tokens, worth roughly $2.64 million at the time, in under an hour. The wallet then spread those tokens across three other addresses.
How much was stolen, and why the numbers differ
You’ll see several figures, because each tracker measured something slightly different. Polymarket’s own refund count is the most useful one for traders:
- About $2.7 million across 726 wallets, the amount Polymarket is refunding.
- $2.71 million, the estimate from blockchain security firm GoPlus.
- About $2.65 million held in the suspected attacker wallet, per Arkham data.
- Roughly 700 users affected, according to analytics firm Bubblemaps.
GoPlus also counted 731 addresses on the main attack path, but it points out that addresses don’t map neatly onto individual people.