Skip to content
DeFi

Polymarket Exploit: Een Uitgelekte Sleutel, Geen Contractfout

By Anurag Verma•May 23, 2026
Polymarket Exploit: Een Uitgelekte Sleutel, Geen Contractfout

Op 22 mei 2026 signaleerde on-chain onderzoeker ZachXBT een aanval op een van Polymarkets wallets. Vroege schattingen kwamen uit op zo'n $520K. Tegen de tijd dat het team de details bevestigde, liep het bedrag op naar $660K tot $700K. Geen reentrancy. Geen orakelmanipulatie. Geen slimme flash-loan-choreografie. Gewoon een private key die belandde waar hij niet had mogen zijn.

Het Polymarket-exploit raakte niet het deel van de stack waarvoor iedereen Trail of Bits en OpenZeppelin inhuurt. Het trof een interne opwaardeerportemonnee, een operationeel account dat werd gebruikt om beloningen te financieren en alles draaiende te houden. Het soort wallet dat nooit in een auditscope verschijnt, omdat het geen contract is. Het is een sleutel die ergens op iemands infrastructuur staat.

Dat is het ongemakkelijke deel. Na een jaar waarin de krantenkoppen over bridges en DVN-misconfiguraties gingen, werd de best-gefinancierde voorspellingsmarkt ter wereld leeggehaald via de meest basale kwetsbaarheid uit het boekje.

Wat er werkelijk gebeurde op Polygon

Het getroffen account was een operationele wallet, geen gebruikersfondsen in de kerncontracten van het protocol. Volgens de berichtgeving van CoinDesk zag ZachXBT ongeveer $520K wegstromen, en het team van Polymarket stelde dat klantentegoeden veilig waren. De aanvaller veegde POL en andere activa van de wallet op Polygon, en deed daarna wat aanvallers altijd doen: bridgen en verspreiden voordat iemand iets kon bevriezen.

Decrypt hield het op bijna $700K en identificeerde het specifiek als een interne opwaardeerportemonnee. Het verschil in bedragen is normaal in de eerste 24 uur; het mechanisme staat niet ter discussie. Iemand heeft de sleutel bemachtigd.

Dit is een Polygon POL-exploit uitsluitend in de zin dat POL het actief was dat in de wallet stond. De chain faalde niet. Het contract faalde niet. Het beheer van één operationele sleutel faalde.

Waarom de UMA CTF Adapter niet het probleem was

Polymarket's marktresolutie verloopt via UMA's optimistic oracle via de UMA CTF Adapter, het contract dat vragen plaatst, geschillen afhandelt en uitkomsten afwikkelt. Dat is het onderdeel dat, op papier, het grootste adversariale risico draagt. Het is geauditeerd. Het is beproefd over duizenden markten.

En het had er niets mee te maken.

Ik denk dat dit het detail is dat mensen over het hoofd zullen zien, terwijl ze dat niet zouden moeten doen. De smart contract-laag hield stand. Het oracle hield stand. Het ding dat brak was een wallet die een mens beheert met een sleutel waartoe een mens (of een CI-pipeline, of een hot signing service) toegang heeft. We hebben de bull market besteed aan het verharden van de onderdelen die formele verificatie hebben, terwijl we de onderdelen negeerden die een .env-bestand hebben.

Operationele sleutels zijn nu het echte aanvalsoppervlak

Dit is het patroon van incidenten in 2026. De Solidity wordt beter. Auditors doen hun werk goed. Formele methoden onderscheppen de reentrancy-bugs die vroeger negen cijfers leegdraineerden. Dus verplaatsten aanvallers zich.

Ze verplaatsten zich naar het zachte weefsel:

  • Hot wallets gebruikt voor beloningen, gas top-ups en market-making.
  • Deployer-sleutels die na de lancering nooit zijn geroteerd.
  • Multisig-ondertekenaars die een laptop hergebruiken voor zowel ondertekenen als browsen.
  • CI/CD-secrets die transacties in productie kunnen ondertekenen.

Niets van dat staat in een auditrapport. Wanneer ik beveiliging scope bij een gereguleerde exchange, is de contractreview misschien een derde van het werk. De rest is HSM's, signer-segregatie, documentatie van sleutelceremoniën en de diep onopvallende vraag van "wie kan om 3 uur 's nachts geld verplaatsen en wat zou hen tegenhouden." Dat laatste deel is waar de meeste teams kwetsbaar zijn.

Dit is dezelfde les als het Kelp DAO LayerZero-verlies, $292 miljoen verdwenen niet door een contractbug maar door een misconfiguratie in de operationele laag. Ander mechanisme, zelfde oorzaak: het saaie deel dat niemand auditeert.

Hoe een $660K ops wallet eruit had moeten zien

Als een enkele sleutel $660K kan verplaatsen, is dat een ontwerpkeuze, geen pech. Een paar zaken die absoluut vanzelfsprekend zouden moeten zijn voor elke operationele wallet met substantiële waarde:

  1. Bestedingslimieten in de walletlogica zelf. Een wallet voor het aanvullen van beloningen heeft geen reden om zijn volledige saldo in één transactie te kunnen versturen. Begrens het on-chain.
  2. Drempelhandtekening voor alles boven een minimum. Kleine geautomatiseerde uitbetalingen mogen hot zijn. Alles boven, zeg, $10K zou een tweede ondertekenaar moeten vereisen. Een Safe multisig met een lage drempel voor grote overboekingen is niet moeilijk.
  3. Sleutelisolatie van de applicatieomgeving. De ondertekeningssleutel van een ops-wallet mag nooit staan waar applicatiecode, afhankelijkheden of een gecompromitteerde CI-runner hem kan lezen.
  4. Monitoring die een mens alarmeert bij abnormale uitstroom. ZachXBT ontdekte dit voordat het team het aankondigde. Je eigen alertering zou een derde partij die de mempool in de gaten houdt, voor moeten zijn.

Niets hiervan is nieuw. Het is de boel die sneuvelt als een team snel aan het shippen is en de wallet "gewoon voor beloningen" is.

De kloof in de audit-stack die niemand toebehoort

Het diepere probleem is intern een kwestie van verantwoordelijkheid. Smart contract-beveiliging heeft een duidelijke eigenaar: het auditbedrijf. Operationele sleutelbeveiliging heeft... wie de wallet heeft opgezet, doorgaans onder tijdsdruk, en er wordt vaak nooit meer naar gekeken. Ik schreef over deze kloof in de context van DeFi's gebroken audit-stack: de certificering dekt de contracten en houdt op bij de contractgrens. Alles wat operationeel is, valt buiten de scope en buiten het gezichtsveld.

Totdat een toezichthouder of verzekeraar de operationele beveiliging dwingt een begrotingspost met een eigenaar te worden, blijft dit zich voordoen. De operationele beveiliging van DeFi is in 2026 ongeveer waar smart contract-beveiliging in 2019 was: bekend als belangrijk, van niemand, als laatste gefinancierd.

Polymarket redt het wel. $660K is te overleven voor een platform van hun omvang, en tot hun eer hebben ze snel en duidelijk gecommuniceerd. Maar het volgende team dat dit overkomt, heeft misschien niet de financiële buffer om het op te vangen. De sleutelcompromittering die een schatkist leegtrekt in plaats van een beloningsportemonnee komt eraan, en het zal geen Solidity-bug zijn. Het zal een sleutel op een laptop zijn.

Bronnen