Uitsplitsing: hoe de hacker 80k ETH stal van de Solana Wormhole-brug PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Uitsplitsing: hoe de hacker 80k ETH van de Solana Wormhole-brug heeft gestolen

Een van de slechtste hacks tegen de Solana-blockchain gebeurde op woensdag toen een hacker erin slaagde 80,000 ether (ETH), meer dan $ 214 miljoen op het moment van schrijven, uit het Solana-systeem en in de Ethereum-blockchain over te brengen via de Wormhole-brug - een service die de mogelijkheid biedt om tussen de verschillende blockchains.

Uitgelegd in een tweet draad door het pseudonieme Twitter-profiel slimme contracten, voltooide de hacker de exploit door de 80,000 ETH in één keer uit het slimme Wormhole-contract op Ethereum over te zetten transactie. Het bleek dat dit slechts de laatste stap was in een reeks hacks waarmee de hacker het geld kon stelen. 

“Hoewel het dramatisch is, is deze transactie slechts het einde van een interessante reeks gebeurtenissen. Ik moest achteruit werken om erachter te komen hoe dit mogelijk was', tweet smartcontracts.

Voogden hebben een valse overdracht ondertekend

Wormgat is een zogenaamde brug, a slim contract, in dit geval op Ethereum, biedt dat een manier om crypto-activa tussen verschillende blockchains te verplaatsen. Volgens smartcontracts heeft Wormhole, vanuit een oogpunt van hoog niveau, specifiek een reeks zogenaamde voogden die de overdrachten tussen de blockchains ondertekenen.

De Wormhole-bewakers hadden op de een of andere manier deze 80,000 ETH-overdracht ondertekend alsof het 100% legitiem was.

“De transactie die 80,000 euro opleverde ETH was eigenlijk de aanvaller die 80,000 ETH van Solana naar Ethereum overbracht. Ik dacht aanvankelijk dat het contract de handtekeningen op de overdracht mogelijk onjuist had gevalideerd, maar de handtekeningen [werden] volledig uitgecheckt."

Volgens smartcontracts kwam de eerste doorbraak en gedeeltelijke verklaring van een transactie op Solana die op de een of andere manier 120,000 "Wormhole ETH" sloeg, verpakte ether op Solana, uit het niets. Omdat de hacker Wormhole ETH op Solana kon minten, kon hij het correct terugtrekken naar Ethereum.

“Solana is een beetje raar”

Als we de transactiegeschiedenis van de hacker onderzoeken, is er een transactie die plaatsvond vlak voor het slaan van de 120,000 Wormhole ETH. In deze transactie, slaat de hacker slechts 0.1 Wormhole ETH, alsof de hacker de functie met een kleine hoeveelheid test.

Bij nader onderzoek van de transactiegeschiedenis van de hacker blijkt dat de hacker wel degelijk een storting van 0.1 ETH van Ethereum naar solarium. Hoewel de aanvaller geen ETH-storting van 120,000 ETH heeft gedaan in het Wormhole smart contract op Ethereum, is er iets interessants aan deze storting.

Zoals smartcontract in zijn tweet uitlegt, veroorzaakten de transacties die Wormhole ETH op Solana sloegen een Wormhole smart contract functie genaamd "compleet_verpakt“. Een van de parameters die deze functie nodig heeft, is een "overdrachtsbericht", in feite een Bericht gesigneerd door de bewakers van de brug waarop staat welke munt je moet slaan en hoeveel.

"Solana is een beetje raar, dus deze parameters zijn eigenlijk zelf slimme contracten. Maar het belangrijkste is hoe deze "overdrachtsbericht" -contracten tot stand komen. Hier is de transactie die het 0.1 ETH-overdrachtsbericht maakte”, tweet smartcontracts.

Wie controleert de schijven?

Dit contract voor "overdrachtsbericht" wordt gecreëerd door het activeren van een functie genaamd "post_vaa“. Het belangrijkste is dat post_vaa controleert of het bericht geldig is door de handtekeningen van de voogden te controleren. Dat deel lijkt redelijk genoeg, zegt smartcontracts, maar het is deze stap voor het controleren van handtekeningen die alles heeft gebroken.

De functie "post_vaa" controleert de handtekeningen niet echt. In plaats daarvan is er, op de typische Solana-manier, nog een slim contract dat wordt gemaakt door de "verifiëren_handtekeningen" functie. Een van de ingangen naar de functie "verify_signatures" is een door Solana ingebouwd "systeem"-programma dat verschillende hulpprogramma's bevat die het contract kan gebruiken.

Binnen "verify_signatures" probeert het Wormhole-programma te controleren of de uitvoering die plaatsvond vlak voordat deze functie werd geactiveerd, was dat de Sec256k1 handtekening verificatie functie is uitgevoerd.

“Deze verificatiefunctie is een ingebouwde tool die moet controleren of de gegeven handtekeningen correct zijn. De handtekeningverificatie is dus uitbesteed aan dit programma. Maar hier komt de bug om de hoek kijken', tweet smartcontracts.

De Wormhole-contracten gebruikten de functie laad_instructie_at om te controleren of de functie Secp256k1 het eerst is aangeroepen, maar de functie load_instruction_at is relatief recent verouderd omdat deze controleert niet of het wordt uitgevoerd met het werkelijke systeemadres!

Spel is over

Volgens smartcontracts wordt de beller geacht te voorzien in: invoer het systeemadres van het programma dat wordt uitgevoerd, maar de hacker heeft een ander systeemadres opgegeven.

Hier is dat systeemadres dat wordt gebruikt als invoer voor de "verify_signatures" voor de legitieme storting van 0.1 ETH:

Correcte invoer van systeemadres
Correcte invoer van systeemadres

Maar hier is de transactie "verify_signatures" voor de nep-storting van 120k ETH:

Invoer systeemadres
Invoer van valse systeemadres 

Dat is niet het systeemadres!

“Door dit “nep” systeemprogramma te gebruiken, kon de aanvaller effectief liegen over het feit dat het handtekeningcontroleprogramma werd uitgevoerd. De handtekeningen werden helemaal niet gecontroleerd!”, tweet smartcontracts.

“Na dat punt was het game over. De aanvaller liet het lijken alsof de bewakers een aanbetaling van 120k hadden ondertekend in Wormhole op Solana, hoewel ze dat niet hadden gedaan. Het enige wat de aanvaller nu hoefde te doen, was zijn 'speelgeld' echt maken door het terug te trekken naar Ethereum. En één opname van 80k ETH + 10k ETH later (alles in de brug op Ethereum), was alles weg.

everdome

CryptoSlate-nieuwsbrief

Met een samenvatting van de belangrijkste dagelijkse verhalen in de wereld van crypto, DeFi, NFT's en meer.

krijg een rand op de cryptoassetmarkt

Krijg toegang tot meer crypto-inzichten en context in elk artikel als betaald lid van CryptoSlate-rand.

Analyse op de keten

Prijsmomentopnamen

Meer context

Word nu lid voor $ 19 / maand Ontdek alle voordelen

Bron: https://cryptoslate.com/breakdown-how-the-hacker-stole-80k-eth-from-the-solana-wormhole-bridge/

Tijdstempel:

Meer van cryptoslat naar