Injective voor $4,9 miljoen leeggehaald via exploit van botsende marktp-ID's in binary options
Belangrijkste punten
- •Een aanvaller misbruikte op 31 augustus een vereffeningsfout in binary options op Injective om circa $4,9 miljoen te bemachtigen.
- •De exploit gebruikte 299 permissionless gecreëerde binary options-markten met zelf gecontroleerde oracles die nooit prijzen aanleverden, waardoor opnames via zelf-matchende transacties konden worden verdubbeld.
- •De oorzaak was een botsing van marktidentificaties door het samenvoegen van velden zonder scheidingstekens bij het genereren van market_id, waardoor een INJ-verzekeringsfonds kon botsen met een USDC-markt.
- •Validators hielden de Injective-chain ongeveer 3 uur en 42 minuten stil, gingen slechts één blok vooruit en behielden alle uitgevoerde transacties in plaats van terug te draaien zoals Cronos deed bij een recent incident.
- •De gestolen fondsen werden overgebracht naar Ethereum en samengebracht als circa 1.980 ETH op adres 0x5a18…69ea, terwijl Injective marketingcontent plaatste en tijdens de stilstand geen publieke verklaring over het incident aflegde.

Injective, een Layer 1-blockchainprotocol gespecialiseerd in decentralized finance, werd op 31 augustus getroffen door een exploit waarbij ongeveer $4,9 miljoen werd gestolen via een kritieke kwetsbaarheid in het vereffeningssysteem voor binary options. Binary options-markten – waarbij handelaren wedden op ja/nee-prijsuitkomsten op een vaste vervaldatum – behoren tot de structureel complexere derivaten die een permissionless Exchange-module kan aanbieden, aangezien de correctheid van de vereffening afhangt van oracle-levering, restitutielogica en de boekhouding van verzekeringsfondsen die zonder randgevallen met elkaar samenwerken.
De aanvaller maakte systematisch misbruik van een permissionless mechanisme voor het creëren van markten om gedurende 19 uur 299 direct aan te maken binary options-markten op te zetten, elk beheerd via een zelf gecontroleerd oracle dat bewust zo was geconfigureerd dat het nooit prijzen zou aanleveren. De oraclesymbolen waren expliciet zo opgebouwd dat ze het restitutiepad zonder prijs activeerden, waarbij de tijdstempels voor expiratie en vereffening slechts enkele seconden uit elkaar lagen.
A binary-options settlement bug has been exploited on @Injective according to @ErthlingPaddy. Attacker bridged ~$4.9M to Ethereum, the funds are unmoved. pic.twitter.com/fwnx6cQajJ — Defimon Alerts (@DefimonAlerts) September 1, 2026
On-chain analyse laat zien dat de exploit berustte op zelf-matchende transacties tussen de subaccounts van de aanvaller zelf. De dader stortte onderpand, nam zowel long- als shortposities in tegen gemanipuleerde prijzen en misbruikte het restitutiemechanisme om per cyclus ruwweg het dubbele van het gestorte bedrag op te nemen. In één gedocumenteerde reeks genereerde circa 105.000 USDC opnames van meer dan 204.000 USDC. De opbrengst werd vervolgens via CCTP overgebracht naar Ethereum, op Uniswap geruild voor ETH en samengebracht op adres 0x5a18…69ea, waar circa 1.980 ETH – ongeveer $4,88 miljoen – tot op het moment van publicatie onbeweeglijk bleef.
De Injective-chain stond ongeveer drie uur en 42 minuten stil, van blok 181.027.006 om 16:10 UTC tot blok 181.027.007 om 19:52 UTC. Chain-halts – die tot stand komen wanneer validators gezamenlijk de blokproductie pauzeren – zijn een van de weinige noodinstrumenten die op de Cosmos SDK gebaseerde netwerken hebben bij een actieve exploit, maar ze brengen eigen afwegingen met zich mee, zoals het verschil tussen de reactie van Injective en die van Cronos illustreert. Anders dan Cronos, dat na een recent incident transacties terugdraaide, ging Injective over de stilstand precies één blok vooruit, waarbij alle uitgevoerde transacties behouden bleven. De laatste poging tot exploitatie mislukte uitsluitend doordat de vereffeningstijdstempel verstreek te midden van ernstig vertraagde blokproductie, die vlak voordat validators ingrepen was gedaald tot intervallen van ongeveer 38 minuten.
Injective halted for ~4 hours today after a binary-options exploit drained multiple assets. In that window, the official @injective account posted twice — both marketing. "ICYMI our AI Agent SDK is live." "Bridge your ETH to Injective." Zero mention of the halt. No "funds are… — Paddy-earthling (@ErthlingPaddy) August 31, 2026
Technische fout en kritiek op transparantie
De oorzaak ligt in een botsing van marktidentificaties in de kernlogica van Injective. Het protocol genereert market_id door oracleType, ticker, quoteDenom, oracleSymbol en oracleProvider samen te voegen zonder scheidingstekens of lengteprefixen. Dit hashing-schema stelde de aanvaller in staat een in INJ gedenieerd verzekeringsfonds te creëren dat botste met de identificatie van een in USDC gedenieerde binary options-markt. Botsingen van identificaties van dit soort zijn een bekend type bug in systemen die sleutels opbouwen uit samengevoegde ongestructureerde velden, wat de reden is dat veel protocollen overstappen op lengte-geprefixeerde of naamruimte-gescheiden identificaties.
Toen de vereffening het restitutiepad zonder prijs betrad, probeerde het systeem het kunstmatig gecreëerde USDC-tekort te dekken met de ruwe integerbalans van het gekoppelde INJ-fonds. Doordat de code minimale INJ-saldi als voldoende dekking voor het in dollars luidende tekort behandelde, werd de vereiste haircut op resterende posities omzeild en konden volledige opnames van kunstmatig opgeblazen saldi plaatsvinden.
Het incident heeft de kritiek op Injectives beslissing om haar kernrepositories van de chain van GitHub te halen nieuw leven ingeblazen, een stap die eerder werd gerechtvaardigd als verkleining van het aanvalsoppervlak. Critici stellen dat de exploit de fundamentele grenzen van security through obscurity aantoont: de aanvaller gebruikte uitsluitend de openbare SDK-documentatie, verouderde gecompileerde binaries tot versie 1.17.2 en het live Frontrunner-testnet om de kwetsbaarheid empirisch te reconstrueren. Onafhankelijke auditors en whitehat-onderzoekers werd ondertussen de toegang op broncodeniveau ontzegd die nodig was om de fout proactief te identificeren. De episode voegt een hoofdstuk toe aan een terugkerend debat in de sector over gesloten broncode van chains, dat eerdere discussies weerspiegelt over het vraagstuk of het achterhouden van broncode vastberaden aanvallers daadwerkelijk afschrikt of vooral onafhankelijke controle belemmert.
Injective made its core chain code private — injective-core and injective-chain are both gone from GitHub (check for yourself: 404). The stated logic: harder for attackers to find bugs. This exploit is the counterargument. You don't need the source to find this. The attack… — Paddy-earthling (@ErthlingPaddy) August 31, 2026
Communicatiefouten verergerden de technische inbreuk. Gedurende de stilstand publiceerden Injectives officiële sociale kanalen marketingcontent over nieuwe producten, zonder het incident te erkennen of gebruikers gerust te stellen. Deze aanpak stond in schril contrast met protocollen als MANTRA en Cronos, die recente storingen publiekelijk bekendmaakten.
Er werd een on-chain bericht met een bounty-aanbod naar de aanvaller gestuurd vanuit een niet-geverifieerde smart wallet, al heeft Injective geen officiële betrokkenheid bevestigd en blijft de identiteit van de afzender onduidelijk. Tot op het moment van schrijven had het protocol geen publieke verklaring afgegeven over de exploit, de gevolgen voor gebruikers of geplande herstelmaatregelen. Belangrijke open vragen voor waarnemers zijn onder meer of de samengebrachte ETH op 0x5a18…69ea in beweging komt, of een officiële bounty of onderhandeling volgt, en of Injective naar aanleiding van het incident een patch bekendmaakt of de openbare toegang tot de broncode herstelt.