Polymarket confirms third-party breach; researchers find wallet-draining DebugBear script
Polymarket's postmortem confirms session abuse through a compromised monitoring script. It reports $2.7m in drained funds plus $1.2m for pause-related losses, with 95% of affected wallets refunded as of October 30. Trading resumed and active sessions were reset; total affected users remain undisclosed.
- Disclosed
- Oct 29, 2026
- Updated Nov 7, 2026
- Severity
- Septic Tank Blew
- No CVE: a breach, not a bug
- Splash zone
- Logged-in Polymarket.com users exposed to the malicious script; DebugBear RUM customers should remove its embed
- web
- In the wild
- Yes
- Polymarket confirms a provider compromise and reimbursement for affected users.
What happened
Polymarket’s international platform confirmed a compromised provider on October 29 and committed to compensating affected users. Its status page now records the outage as resolved. L4 reflects a real compromise, rather than a theoretical vulnerability.
Hudson Rock attributes the malicious script to a DebugBear delivery URL. The sample reuses the logged-in application’s trading client and signer to attempt position transfers or sales and subsequent asset transfers. This does not prove every signing request silently succeeds, private keys were exported, or smart contracts were compromised. Removing the script does not establish that every already-open session is safe.
The platform’s notice does not name its provider; DebugBear separately acknowledges an incident. The precise exposure window, how access to the registrar was obtained and total affected population remain unknown. The later operator figures below supersede the absence of a vendor loss estimate; wallet balances and individual claims are not aggregate losses. This is a separate October event; June incident figures must not be reused for it.
October 30 postmortem: Polymarket reports removing the script, clearing caches and resetting active sessions. It assigns $2.7m to drained funds and $1.2m to pause-related losses: $3.9m in compensation, not $3.9m stolen. Its 95% refund figure includes drained-wallet and goodwill refunds at that time. These are operator figures, not an independent audit. It also describes stronger script integrity controls and continued investigation.
DebugBear’s October 30 update: The provider says its DNS records were altered through its domain registrar. Its early findings point to one customer website, with no evidence so far of intrusion into its internal systems; investigation continues. This does not establish that other customers were unaffected or that the monitoring script is safe to restore. DebugBear also reported that inbound email to its domain was unavailable at the time; follow its public updates rather than assuming an emailed support request was received.
Dated on-chain scope: Bitquery counts 737 drained accounts and 985 withdrawals on its main route, plus outcome-share transfers from 33 accounts, through October 29 at 19:49 UTC. These are research-defined accounts, not unique people; do not add the 33 to 737 without resolving overlap. Its approximately $2.73m is a route-specific estimate using dated conversion prices, not an extra loss to add to Polymarket’s reported $2.7m stolen or $3.9m compensation. The snapshot does not measure later refunds or establish today’s exposed population.
November 4 Polygon governance proposal: The original forum proposal says five transaction-blocked addresses hold about 70.49M native POL associated with two separate incidents: four Polymarket addresses have a reference total of 23,862,736.07 POL and one Binance address 46,626,593.27 POL. It requests a one-time coordinated fork moving the specified balances to verified recovery addresses without changing supply; other tokens and Class B addresses are outside the transfer. Governance approval, balance reconciliation, proof of recovery-address control and an Amoy rehearsal are conditions. The client release, fork name and mainnet activation block are undecided. November 5 at 14:30 UTC is the planned discussion, not an activation promise. Address ownership and blocking are the author’s account, not an independent chain investigation here. This does not establish an approved fork, returned assets or additional customer reimbursement. Do not add the two incident shares to this event’s loss, or double-count them with frozen funds, replacement funding or compensation.
SEAL’s November 4 roundup reports that two affected people contacted its responders and that it completed one asset freeze. The roundup gives no amount and does not connect the freeze to a specific Polygon address. Count the freeze separately from user refunds and the proposed native-POL recovery.
Crime-scene timeline
Oct 29, 17:38 UTC
Polymarket reports unauthorized wallet activity
Oct 29, 18:05 UTC
Polymarket pauses new trades and relayer actions
Oct 29, 18:37 UTC
Polymarket confirms the provider compromise and promises reimbursement
Oct 29, 19:05 UTC
Official status history marks the incident resolved
Oct 29, 19:49 UTC
Bitquery snapshot traces 737 drained accounts
Its route-specific analysis counts 985 withdrawals and about $2.73m; these are researcher estimates, not unique-person or final incident totals.
Oct 30, 20:07 UTC
Postmortem details containment and compensation
Polymarket reports cache clearance, active-session resets and $3.9m in total compensation.
Oct 30, 23:11 UTC
DebugBear reports DNS changes through its registrar
Its preliminary investigation points to a specific customer website; it reports no evidence of an internal-system compromise so far.
Nov 4, 2026
SEAL reports one asset freeze from two victim reports
The response roundup gives no frozen amount or evidence of funds being returned.
Nov 4, 2026
Polygon forum proposes a native-POL recovery fork; approval is pending
The proposal attributes 23,862,736.07 POL to this incident, within about 70.49M POL across two separate cases. It is a governance proposal with no decided client release or activation block, not completed recovery or additional user compensation.
Who said what
We list each claim and who made it. Primary sources (the vendor, the researcher, the registry) are marked. Where reports disagree, we grade by the worst credible case.
- Polymarket official status historyPrimaryRecords the October 29 pause, provider compromise, reimbursement commitment and resolution, with explicit UTC timestamps.
- Hudson Rock researchPrimaryDirectly read static analysis of session reuse and asset-transfer logic, with captured-sample indicators and explicit limits on financial and exposure-window evidence.
- DebugBear security noticeOriginal vendor notice; read through the official X embed below.
- Official X embed of DebugBear's noticePrimaryDebugBear confirms an ongoing security incident and tells RUM customers to remove its embed code.
- Polymarket October 30 postmortemPrimary
- DebugBear October 30 investigation updatePrimaryReports registrar-mediated DNS compromise, interrupted inbound email and preliminary scope; public post metadata dates publication to October 30 at 23:11 UTC.
- Bitquery original October29 on-chain investigationPrimaryTraces one recipient route through October29 19:49 UTC; supplies account/withdrawal counts and a 16-entry ledger. This predates the operator postmortem and refunds.
- Original Polygon forum native-POL recovery proposalPrimaryAuthor proposes moving about 70.49M native POL from five listed addresses; separates incident shares, approval/rehearsal conditions and undecided activation parameters. Not evidence of an executed fork or repayment.
- Security Alliance incident-response roundupPrimaryReports two victim contacts and one completed asset freeze. Gives no amount or repayment result.