Was ist ein Wiedereintrittsangriff? Smart-Contract-Risiko (2026)

— By Tony Rabbit in Tutorials

Was ist ein Wiedereintrittsangriff? Smart-Contract-Risiko (2026)

Ein Wiedereintrittsangriff nutzt eine Schwachstelle in Smart Contracts aus, um Gelder abzuschöpfen, indem wiederholt eine Funktion aufgerufen wird, bevor der Status aktualisiert wird. Erfahren Sie, wie.

In der schnelllebigen Welt des dezentralen Finanzwesens (DeFi) sind intelligente Verträge das Rückgrat der Innovation und automatisieren Vereinbarungen und Transaktionen mit beispielloser Effizienz. Allerdings bedeutet ihre Unveränderlichkeit auch, dass jede Schwachstelle katastrophale Folgen haben kann. Zu den berüchtigtsten und hartnäckigsten Bedrohungen gehört die Wiedereintrittsangriff, ein raffinierter Exploit, der den Kryptoraum seit Jahren heimsucht, zu Verlusten in Milliardenhöhe führt und die Sicherheitspraktiken, die wir heute sehen, grundlegend prägt.

Das Verständnis des Wiedereintritts ist nicht nur etwas für Entwickler; Es ist von entscheidender Bedeutung für jeden, der mit DeFi-Protokollen interagiert, vom Liquiditätsanbieter bis zum Händler, der neue Paare auf DEXTools verfolgt. In diesem Leitfaden wird erläutert, was ein Wiedereintrittsangriff ist, wie er funktioniert, welche historischen Auswirkungen er hat und welche wesentlichen Abwehrmaßnahmen unsere digitalen Vermögenswerte im Jahr 2026 und darüber hinaus schützen.

Diagram illustrating a reentrancy attack flow with an attacker contract
Ein Wiedereintrittsangriff nutzt die zeitliche Lücke zwischen dem Senden von Geldern und der Aktualisierung des Vertragsstatus aus.

Was genau ist ein Wiedereintrittsangriff?

Im Kern nutzt ein Wiedereintrittsangriff eine kritische Timing-Schwachstelle in einem Smart Contract aus. Konkret zielt es auf den kurzen Zeitraum zwischen dem Senden von Geldern an eine externe Adresse durch einen Vertrag und dem Aktualisieren seines internen Status ab, um diese Transaktion widerzuspiegeln. Ein Angreifer nutzt diese Lücke aus, um wiederholt eine anfällige Funktion aufzurufen und so Geld abzuschöpfen, bevor der Vertrag die erste Auszahlung registrieren kann.

Stellen Sie sich einen Verkaufsautomaten vor, der ein Getränk ausgibt, seinen Bestand jedoch erst nach einer kurzen Verzögerung aktualisiert. Wenn Sie während dieser Verzögerung schnell und mehrmals die Ausgabetaste drücken könnten, könnten Sie mehrere Getränke zum Preis von einem erhalten. Ein Wiedereintrittsangriff funktioniert nach einem ähnlichen Prinzip, jedoch mit digitalen Vermögenswerten wie ETH oder Token.

Wie ein Wiedereintrittsangriff abläuft

Das typische Szenario besteht darin, dass ein Angreifer seinen eigenen bösartigen Smart Contract einsetzt. Dieser Angreifervertrag interagiert dann mit einem anfälligen Smart Contract, normalerweise durch Aufrufen einer Rückzugsfunktion. Wenn der anfällige Vertrag versucht, ETH an die Adresse des Angreifervertrags zu senden, greift ein entscheidender Mechanismus: die Fallback-Funktion des Angreifervertrags.

Die Fallback-Funktion ist eine spezielle Funktion in Solidity, die ausgeführt wird, wenn ein Vertrag reine ETH ohne spezifische Funktionsaufrufe empfängt oder wenn eine Funktion aufgerufen wird, die nicht existiert. Bei einem Wiedereintrittsangriff ist die Fallback-Funktion des Angreifers so programmiert, dass sie sofort auf die anfällige Rückzugsfunktion des Zielvertrags zurückgreift. Dieser rekursive Aufruf erfolgt, bevor der anfällige Vertrag die Möglichkeit hat, den Kontostand des Benutzers oder den Gesamtbestand an Geldern zu aktualisieren.

Diese Schleife wird fortgesetzt und entzieht dem anfälligen Vertrag bei jedem rekursiven Aufruf Gelder, bis der Vertrag leer ist oder ein Gaslimit erreicht ist. Der Angreifer kann sich im Wesentlichen mehrmals von derselben ursprünglichen Anfrage zurückziehen und dabei die veralteten Statusinformationen ausnutzen.

Schlüssel zum Mitnehmen: Ein Wiedereintrittsangriff nutzt die Verzögerung zwischen dem Senden von Geldern und der Aktualisierung des internen Kontostands des Vertrags aus, sodass ein Angreifer wiederholt Vermögenswerte abheben kann.

Der berüchtigte DAO-Hack und sein Erbe

Der bekannteste und wirkungsvollste Wiedereintrittsangriff ereignete sich im Jahr 2016 und richtete sich gegen die DAO (Decentralized Autonomous Organization). Dieses bahnbrechende Projekt war ein frühes, ehrgeiziges Experiment zur dezentralen Governance und Investition. Sein Smart Contract enthielt jedoch eine Wiedereintrittsschwachstelle.

Ein Angreifer nutzte diese Schwachstelle aus, um systematisch etwa 3,6 Millionen ETH aus dem Vertrag des DAO zu entziehen. Das schiere Ausmaß des Diebstahls löste Schockwellen in der entstehenden Ethereum-Community aus. Die Folgen waren so gravierend, dass sie letztendlich zu einem umstrittenen Hard Fork der Ethereum-Blockchain führten, wodurch zwei unterschiedliche Ketten entstanden: Ethereum (ETH), das den Hack rückgängig machte, und Ethereum Classic (ETC), das die ursprüngliche Kette einschließlich des Hacks beibehielt.

Der DAO-Hack ist eine deutliche Erinnerung an das verheerende Potenzial von Wiedereintrittsangriffen und unterstreicht die dringende Notwendigkeit robuster Sicherheitspraktiken für intelligente Verträge. Auch heute noch, Jahre nach diesem grundlegenden Ereignis, ist Wiedereintritt eine der Hauptursachen für DeFi-Exploits und trägt zu historischen Verlusten in Höhe von über 1 Milliarde US-Dollar bei verschiedenen Protokollen bei.

Conceptual image of a secure smart contract with various defense mechanisms
Mehrere Verteidigungsebenen sind entscheidend für den Schutz intelligenter Verträge vor Wiedereintritt und anderen Schwachstellen.

Arten von Wiedereintrittsangriffen

Während das Grundprinzip dasselbe bleibt, können Wiedereintrittsangriffe in leicht unterschiedlichen Formen auftreten:

  • Einzelfunktions-Wiedereintritt: Dies ist der klassische Typ, bei dem der Angreifer innerhalb desselben Vertrags wiederholt dieselbe anfällige Funktion (z. B. eine Rückzugsfunktion) aufruft.
  • Funktionsübergreifender Wiedereintritt: In dieser komplexeren Variante könnte ein Angreifer eine Funktion aufrufen, die eine Zustandsvariable ändert, und dann sofort eine andere anfällige Funktion aufrufen, die auf dem veralteten Wert dieser Zustandsvariablen basiert, bevor diese ordnungsgemäß aktualisiert wird.
  • Vertragsübergreifender Wiedereintritt: Bei diesem Typ handelt es sich um mehrere Verträge. Ein Angreifer könnte eine Schwachstelle in Vertrag A ausnutzen, um den Status von Vertrag B zu manipulieren, was dann einen Wiedereintritt in Vertrag A oder einen anderen verwandten Vertrag ermöglicht. Dies kommt häufig bei komplexen DeFi-Protokollen mit miteinander verbundenen Komponenten vor.

Verteidigung gegen Wiedereintrittsangriffe

Angesichts der anhaltenden Bedrohung haben Entwickler und Prüfer intelligenter Verträge mehrere robuste Abwehrmechanismen gegen Wiedereintritt entwickelt. Die Umsetzung dieser Strategien ist für sichere DeFi-Protokolle nicht verhandelbar.

Wiedereintritts-VerteidigungsmechanismusWie es funktioniert
Prüf-Effekte-Interaktionen-MusterStellt sicher, dass alle Zustandsänderungen (Auswirkungen) angewendet werden, bevor externe Aufrufe (Interaktionen) durchgeführt werden.
Wiedereintrittsschutz (Mutex)Ein Modifikator, der eine Funktion während der Ausführung sperrt und einen erneuten Eintritt verhindert, bis der erste Aufruf abgeschlossen ist.
Pull-Over-Push-ZahlungenAnstatt dass der Vertrag Gelder an eine Adresse überträgt, müssen Benutzer ihre Gelder aktiv „abziehen“, wodurch das Risiko externer Anrufe verringert wird.
Professionelle Smart Contract AuditsUnabhängige Sicherheitsexperten überprüfen den Code auf Schwachstellen, einschließlich Wiedereintritt.
  • Das Checks-Effects-Interactions-Muster: Dies ist wohl die grundlegendste Verteidigung. Es schreibt vor, dass Smart-Contract-Funktionen einer bestimmten Reihenfolge folgen sollten: Führen Sie zunächst alle erforderlichen Prüfungen durch (z. B. Absenderautorisierung, Kontostandsprüfungen); Zweitens: Wenden Sie alle Statusänderungen (Auswirkungen) an, z. B. die Aktualisierung von Salden. und erst dann externe Aufrufe (Interaktionen) zu anderen Verträgen oder Adressen durchführen. Durch die Aktualisierung des Status vor dem Senden von Geldern wird das Zeitfenster für einen Wiedereintritt eliminiert.
  • Reentrancy Guard Mutex-Modifikatoren: Bibliotheken wie OpenZeppelin bieten robuste Lösungen wie die Modifikator nonReentrant . Dieser Modifikator fungiert als Mutex-Sperre (gegenseitiger Ausschluss). Wenn eine Funktion mit markiert ist nonReentrant aufgerufen wird, wird ein Flag gesetzt, das alle weiteren Aufrufe dieser Funktion (oder anderer durch denselben Schutz geschützter Funktionen) verhindert, bis die anfängliche Ausführung abgeschlossen ist. Wenn versucht wird, einen wiedereintretenden Aufruf auszuführen, wird er einfach zurückgesetzt.
  • Pull-Over-Push-Zahlungen: Anstelle eines Vertrags, der Gelder automatisch an die Adresse eines Benutzers sendet, besteht ein sichereres Muster darin, Benutzern zu ermöglichen, ihre Gelder „abzuziehen“. Dies bedeutet, dass im Vertrag aufgezeichnet wird, wie viel jedem Benutzer geschuldet wird, und dass der Benutzer eine separate Transaktion initiiert, um sein aufgelaufenes Guthaben abzuheben. Dieser Ansatz reduziert die Angriffsfläche, die mit externen Anrufen verbunden ist, die durch den Vertrag initiiert werden, erheblich.
  • Professionelle Smart Contract Audits: Obwohl es sich nicht um eine Verteidigung auf Codeebene handelt, sind professionelle Audits eine unverzichtbare Sicherheitsebene. Unabhängige Sicherheitsfirmen prüfen den Smart-Contract-Code sorgfältig auf Schwachstellen, einschließlich komplexer Wiedereintrittsmuster, Logikfehler und anderer potenzieller Exploits. Regelmäßige Audits, insbesondere vor der Bereitstellung und nach bedeutenden Upgrades, sind für die Aufrechterhaltung der Integrität von DeFi-Protokollen von entscheidender Bedeutung.
Achtung: Selbst mit fortschrittlichen Tools und Mustern kann sich Wiedereintritt in komplexe Vertragsinteraktionen einschleichen. Wachsamkeit, strenge Tests und kontinuierliche Sicherheitsüberprüfungen sind von größter Bedeutung.

Die Zukunft der Smart Contract-Sicherheit

Mit der Weiterentwicklung des DeFi-Ökosystems entwickeln sich auch die Angriffs- und Verteidigungsmethoden weiter. Während der Wiedereintritt weiterhin eine erhebliche Bedrohung darstellt, sind das kollektive Wissen und die den Entwicklern zur Verfügung stehenden Tools seit dem DAO-Hack erheblich ausgereift. Die Betonung sicherer Codierungspraktiken, die weit verbreitete Einführung geprüfter Bibliotheken und die wachsende Bedeutung der formalen Verifizierung tragen alle zu einer widerstandsfähigeren Blockchain-Landschaft bei.

Für Benutzer ist es wichtig, diese Risiken und die zu ihrer Minderung ergriffenen Maßnahmen zu verstehen. Führen Sie immer Ihre Due-Diligence-Prüfung durch, bevor Sie mit einem neuen Protokoll interagieren, prüfen Sie, ob Prüfberichte vorliegen, und machen Sie sich mit den Kernmechanismen der Verwaltung Ihrer Gelder vertraut. Plattformen wie DEXTools bieten wertvolle Einblicke in die Projektaktivität und den Zustand des Tokens, aber grundlegendes Sicherheitswissen bleibt Ihre beste Verteidigung.

Der Kampf gegen Schwachstellen bei Smart Contracts geht weiter, aber mit kontinuierlicher Weiterbildung und der Umsetzung robuster Sicherheitsmaßnahmen können wir gemeinsam eine sicherere und vertrauenswürdigere dezentrale Zukunft aufbauen. Der Wiedereintritt mag ein historischer Erfolg sein, aber daraus lassen sich immer wieder Lehren ziehen.

Häufig gestellte Fragen

Was ist ein Wiedereintrittsangriff in einfachen Worten?

Ein Wiedereintrittsangriff liegt vor, wenn ein Angreifer wiederholt die Auszahlungsfunktion eines Smart Contracts aufruft, bevor der Vertrag die Möglichkeit hat, seinen Kontostand zu aktualisieren, wodurch effektiv mehrere Male Gelder aus einer einzigen Anfrage abgezogen werden.

Bei welchem ​​berühmten Hack handelte es sich um einen Wiedereintrittsangriff?

Der DAO-Hack von 2016 nutzte bekanntermaßen einen Wiedereintrittsangriff, um etwa 3,6 Millionen ETH zu entleeren, was zur Spaltung der Ethereum- und Ethereum Classic-Blockchains führte.

Wie können Smart Contracts vor Wiedereintrittsangriffen geschützt werden?

Zu den wichtigsten Abwehrmaßnahmen gehören das Checks-Effects-Interactions-Muster (Aktualisierung des Status vor externen Aufrufen), Reentrancy-Guard-Mutex-Modifikatoren (wie OpenZeppelins nonReentrant), Pull-over-Push-Zahlungssysteme und professionelle Smart-Contract-Audits.

Sind Wiedereintrittsangriffe in DeFi immer noch eine Bedrohung?

Ja, trotz fortschrittlicher Sicherheitsmaßnahmen bleibt Wiedereintritt eine der Hauptursachen für DeFi-Exploits und hat in der Vergangenheit aufgrund komplexer Interaktionen und Aufsicht zu Verlusten in Höhe von über 1 Milliarde US-Dollar beigetragen.

Welche verschiedenen Arten von Wiedereintrittsangriffen gibt es?

Zu den Typen gehören Einzelfunktions-Wiedereintritt (Aufruf derselben Funktion), funktionsübergreifender Wiedereintritt (Nutzung des Zustands über verschiedene Funktionen hinweg) und vertragsübergreifender Wiedereintritt (mit mehreren miteinander verbundenen Verträgen).