Aufschlüsselung: Wie der Hacker 80 ETH von der Solana-Wurmlochbrücke PlatoBlockchain Data Intelligence gestohlen hat. Vertikale Suche. Ai.

Aufschlüsselung: Wie der Hacker 80 ETH von der Solana-Wurmlochbrücke gestohlen hat

Einer der schlimmsten Hacks gegen die Solana-Blockchain passierte am Mittwoch, als es einem Hacker gelang, 80,000 Ether (ETH), zum Zeitpunkt des Schreibens über 214 Millionen US-Dollar, aus dem Solana-System in die Ethereum-Blockchain über die Wormhole Bridge zu transferieren – ein Dienst, der die Möglichkeit zum Transfer bietet zwischen den verschiedenen Blockchains.

In einem Tweet erklärt Faden durch das pseudonyme Twitter-Profil Smart Contracts, beendete der Hacker den Exploit, indem er die 80,000 ETH aus dem Wormhole Smart Contract auf Ethereum in einem einzigen transferierte Transaktion. Wie sich herausstellte, war dies nur der letzte Schritt in einer Reihe von Hacks, die es dem Hacker ermöglichten, die Gelder zu stehlen. 

„Obwohl es dramatisch ist, ist diese Transaktion nur das Ende einer interessanten Reihe von Ereignissen. Ich musste anfangen, mich rückwärts vorzuarbeiten, um herauszufinden, wie das überhaupt möglich war“, twittert smartcontracts.

Erziehungsberechtigte haben eine falsche Überweisung unterschrieben

Wormhole ist eine sogenannte Brücke, a Smart-Vertrag, in diesem Fall auf Ethereum, das eine Möglichkeit bietet, Krypto-Assets zwischen verschiedenen Blockchains zu verschieben. Laut Smart Contracts verfügt Wormhole aus hochrangiger Sicht speziell über eine Reihe sogenannter Wächter, die Übertragungen zwischen den Blockchains abzeichnen.

Die Wurmlochwächter hatten diesen 80,000-ETH-Transfer irgendwie abgesegnet, als wäre er zu 100 % legitim.

„Die Transaktion, die 80,000 herausgezogen hat ETH war eigentlich der Angreifer, der 80,000 ETH von Solana nach Ethereum transferierte. Ich dachte ursprünglich, dass der Vertrag die Unterschriften auf der Überweisung möglicherweise falsch validiert hat, aber die Unterschriften [wurden] vollständig überprüft.“

Laut Smartcontracts kam der erste Durchbruch und eine teilweise Erklärung von a Transaktion auf Solana, die irgendwie 120,000 „Wurmloch-ETH“ prägte, Äther auf Solana wickelte, aus dem Nichts. Da der Hacker in der Lage war, Wormhole ETH auf Solana zu prägen, konnte er es korrekt an Ethereum zurückziehen.

„Solana ist irgendwie komisch“

Wenn man den Transaktionsverlauf des Hackers untersucht, gibt es eine Transaktion, die direkt vor der Prägung der 120,000 Wormhole ETH stattfand. In diesem Transaktion, prägt der Hacker nur 0.1 Wormhole ETH, als würde der Hacker die Funktion mit einer kleinen Menge testen.

Eine weitere Untersuchung des Transaktionsverlaufs des Hackers zeigt, dass der Hacker tatsächlich a Einzahlungen von 0.1 ETH von Ethereum in Solana. Obwohl der Angreifer keine ETH-Einzahlung von 120,000 ETH in den Wormhole Smart Contract auf Ethereum getätigt hat, hat diese Einzahlung etwas Interessantes.

Wie smartcontract in seinem Tweet erklärt, lösten die Transaktionen, die Wormhole ETH auf Solana prägten, einen Wormhole Smart Contract aus Funktion genannt "komplett_verpackt“. Einer der Parameter, die diese Funktion übernimmt, ist eine „Übertragungsnachricht“, im Grunde a Nachricht Unterschrieben von den Wächtern der Brücke, die sagen, welcher Token wie viel geprägt werden soll.

„Solana ist irgendwie seltsam, also sind diese Parameter selbst Smart Contracts. Aber das Wichtigste ist, wie diese „Übertragungsnachrichten“-Verträge erstellt werden. Hier ist die Transaktion das hat die 0.1-ETH-Transfernachricht gemacht“, twittert smartcontracts.

Wer kontrolliert die Steine?

Dieser Vertrag „Übertragungsnachricht“ wird erstellt, indem a ausgelöst wird Funktion genannt "post_vaa“. Das Wichtigste ist, dass post_vaa überprüft, ob die Nachricht gültig ist, indem es die Unterschriften der Erziehungsberechtigten überprüft. Dieser Teil scheint vernünftig genug zu sein, sagt SmartContracts, aber es ist dieser Signaturprüfungsschritt, der alles kaputt gemacht hat.

Die Funktion „post_vaa“ überprüft die Signaturen nicht wirklich. Stattdessen gibt es in typischer Solana-Manier einen weiteren Smart Contract, der erstellt wird, indem der „verifiziere_signaturen" Funktion. Einer der Eingänge Bei der Funktion „verify_signatures“ handelt es sich um ein in Solana integriertes „System“-Programm, das verschiedene Dienstprogramme enthält, die der Vertrag verwenden kann.

Innerhalb von „verify_signatures“ versucht das Wormhole-Programm zu überprüfen, ob die Ausführung, die unmittelbar vor dem Auslösen dieser Funktion stattfand, die Sekp256k1 Signaturüberprüfungsfunktion wurde ausgeführt.

„Diese Überprüfungsfunktion ist ein eingebautes Tool, das überprüfen soll, ob die angegebenen Signaturen korrekt sind. Daher wurde die Signaturprüfung an dieses Programm ausgelagert. Aber hier kommt der Fehler ins Spiel“, twittert smartcontracts.

Die Wormhole-Verträge nutzten die Funktion Load_instruction_at um zu überprüfen, ob die Secp256k1-Funktion zuerst aufgerufen wurde, aber die load_instruction_at-Funktion wurde vor relativ kurzer Zeit als veraltet markiert, weil sie prüft nicht, ob es gegen die tatsächliche Systemadresse ausgeführt wird!

Game Over

Laut SmartContracts soll der Anrufer as bereitstellen Varianten des Eingangssignals: die Systemadresse des ausgeführten Programms, aber der Hacker hat eine andere Systemadresse angegeben.

Hier ist diese Systemadresse, die als Eingabe für die „verify_signatures“ für die legitime Einzahlung von 0.1 ETH verwendet wird:

Eingabe der Systemadresse korrigieren
Eingabe der Systemadresse korrigieren

Aber hier ist die „verify_signatures“-Transaktion für die gefälschte Einzahlung von 120 ETH:

Eingabe der Systemadresse
Falsche Eingabe der Systemadresse 

Das ist nicht die Systemadresse!

„Mit diesem „gefälschten“ Systemprogramm könnte der Angreifer effektiv lügen, dass das Signaturprüfprogramm ausgeführt wurde. Die Unterschriften wurden überhaupt nicht geprüft!“, twittert smartcontracts.

„Nach diesem Punkt war das Spiel vorbei. Der Angreifer ließ es so aussehen, als hätten die Wächter eine Einzahlung von 120 in Wormhole on Solana unterschrieben, obwohl sie es nicht getan hatten. Alles, was der Angreifer jetzt tun musste, war, sein „Spielgeld“ real zu machen, indem er es zurück zu Ethereum zurückzog. Und eine Auszahlung von 80 ETH + 10 ETH später (alles in der Brücke auf Ethereum), alles war weg.“

everdome

CryptoSlate-Newsletter

Mit einer Zusammenfassung der wichtigsten täglichen Geschichten in der Welt von Krypto, DeFi, NFTs und mehr.

Holen Sie ein Rand auf dem Cryptoasset-Markt

Greifen Sie als bezahltes Mitglied von auf mehr Krypto-Einblicke und -Kontexte in jedem Artikel zu CryptoSlate Edge.

On-Chain-Analyse

Preisschnappschüsse

Mehr Kontext

Melden Sie sich jetzt für $ 19 / Monat an Entdecken Sie alle Vorteile

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

Zeitstempel:

Mehr von CryptoSlate