Preise werden geladen…

Token-Genehmigungen widerrufen: Anleitung und Gründe

Alte, unbeschränkte Token-Genehmigungen sind eine stille Angriffsfläche auf Ethereum und anderen EVM-Chains. So findest du sie, widerrufst sie sicher und ersetzt sie durch begrenzte Varianten.

Token-Genehmigungen widerrufen: Anleitung und Gründe

Was eine Token-Genehmigung tatsächlich ist

Wenn du einen Token auf Uniswap tauschst, ETH auf Aave verleihst oder USDC über Chains hinweg brückst, übergibst du deine Tokens nicht wirklich an das Protokoll. Du signierst eine kleine On-Chain-Nachricht, die lautet: „Smart Contract X darf bis zu N des Tokens Y aus meiner Wallet abrufen." Diese signierte Erlaubnis nennt man ERC-20-Genehmigung, und sie lebt für immer on-chain, sofern du – oder der Vertrag selbst – sie nicht widerrufst.

Der Grund, warum Genehmigungen existieren, ist technischer Natur. ERC-20-Token sind simple, Bearer-ähnliche Assets: Sie kennen kein Konzept wie „Alice leiht Bob 100 USDC". Sie verstehen nur Salden und Allowances. Damit ein Drittvertrag – etwa ein DEX-Router oder ein Lending-Pool – deine Tokens für dich bewegen kann, muss diesem Vertrag eine Allowance gewährt werden, die über zwei Funktionen gesetzt wird: approve und increaseAllowance.

Die meisten Protokolle fordern den maximal möglichen Wert an, die größte vorzeichenlose 256-Bit-Ganzzahl (2^256 minus 1), weil sie so nicht bei jeder einzelnen Interaktion eine neue Genehmigung von dir einholen müssen. Aus UX-Sicht sind unbegrenzte Genehmigungen bequem. Aus Sicherheitssicht erzeugen sie eine Erlaubnis, an die du dich vielleicht gar nicht mehr erinnerst.

Warum unbegrenzte Genehmigungen gefährlich sind

Eine unbegrenzte Genehmigung ist für sich genommen kein „unbegrenztes Risiko". Sie ist nur so gefährlich wie der Vertrag, der die Allowance hält. Ist das Protokoll, das du genehmigt hast, gut auditiert, langjährig erprobt und wird weiterhin vom selben Team betrieben, ist die Genehmigung etwa so sicher wie das Protokoll selbst. Gefährlich wird es in drei konkreten Situationen – und die kommen häufig genug vor, um sie ernst zu nehmen.

Erstens: Protokolle werden gehackt. Ein Smart Contract kann durch einen Logikfehler, eine Manipulation des Price-Oracles oder einen Governance-Angriff ausgenutzt werden. Kann der Angreifer transferFrom gegen eine Liste genehmigter Nutzer aufrufen, wird aus einem Protokoll-Bug durch eine unbegrenzte Genehmigung ein direkter Drain deiner Tokens. Das ist nicht hypothetisch: Eine Reihe bekannter DeFi-Vorfälle in den letzten Jahren enthielt Token-Draining-Pfade, die sich bestehende Allowances zunutze machten.

Zweitens: Projekte werden aufgegeben und dann von jemand anderem unter demselben Namen oder unter derselben Adresse neu deployed. Sobald ein Team einen Vertrag zurücklässt, ist der Bytecode an dieser Adresse einfach nur Code. Erlaubt ein neuer Owner oder ein Upgrade-Mechanismus einem Angreifer, Admin zu werden, zeigt deine alte Genehmigung nun auf eine feindliche Instanz.

Drittens – und das ist der Punkt, den die meisten Nutzer unterschätzen: Wallet-Drainer-Kits filtern aktiv nach Wallets mit alten Genehmigungen. Wenn du auf einer Phishing-Seite eine bösartige Signatur signierst, stiehlt das Kit nicht nur den einen Token auf der Seite; es durchläuft in einer Schleife jede aktive Allowance, die deine Wallet jemals erteilt hat, und zieht jede einzelne. Der Schaden durch einen einzigen Phishing-Klick skaliert mit der Menge alter Angriffsfläche, die du noch hast. Weniger offene Genehmigungen bedeuten einen kleineren Blast Radius.

Welche Freigaben wirklich sicher beizubehalten sind

Nicht jede Freigabe ist eine tickende Zeitbombe, und jedem Null-Freigaben hinterherzujagen ist sowohl unpraktisch als auch sinnlos. Das Ziel ist es, deine Angriffsfläche zu verkleinern, nicht deine Wallet funktionsunfähig zu machen. Eine vernünftige Faustregel hat drei Stufen.

Behalte Freigaben für Verträge, die du aktiv nutzt, die von seriösen Teams betrieben werden, die auditiert wurden und die kürzlich nicht ausgenutzt wurden. Wenn du Aave oder Uniswap wöchentlich nutzt, gehört die Freigabe, die diese Frontends verwalten, zum Funktionieren des Systems dazu. Sie zu widerrufen bedeutet lediglich, dass du beim nächsten Transaktionsvorgang neu unterschreiben musst, was Gas und ein wenig Aufmerksamkeit kostet.

Reduziere unendliche Freigaben für Verträge, die du selten nutzt. Moderne Wallets wie Rabby, Frame und die aktualisierte MetaMask-Oberfläche verwenden standardmäßig eine endliche Freigabe basierend auf dem Transaktionsbetrag. Wenn ein Vertrag, den du einmal berührt hast, noch eine unendliche Freigabe von vor zwei Jahren hat, setze sie auf null oder auf einen kleinen endlichen Betrag.

Widerrufe Freigaben für alles, was du nicht erkennst, alles, das einen Namen zeigt, von dem du nie gehört hast, und insbesondere alles, bei dem der Vertrag auf Etherscan nicht verifiziert ist. Nicht verifizierte Verträge mit aktiven Freigaben sind das mit Abstand häufigste Muster, das Drainer-Kits ausnutzen.

So findest du jede Freigabe, die deine Wallet erteilt hat

Für diese Aufgabe gibt es zwei vertrauenswürdige Tools, die fast jede aktive EVM-Chain abdecken. Das erste ist Revoke.cash, eine Open-Source-dApp, die speziell für das Allowance-Management entwickelt wurde. Du verbindest deine Wallet, sie scannt die Chain und listet jeden Vertrag auf, der derzeit eine Freigabe ungleich null über deine Tokens hat, gruppiert nach Token. Jede Zeile zeigt den Spender, die aktuelle Freigabe und einen direkten Link zur On-Chain-Widerrufstransaktion.

Das zweite ist der Etherscan Token Approval Checker, verfügbar auf Etherscan für Ethereum und auf den entsprechenden Block-Explorern für Chains wie BNB Chain, Polygon, Arbitrum, Optimism und Base. Du fügst deine Wallet-Adresse ein, klickst auf den Reiter für Freigaben und siehst die gleichen Daten mit einer etwas technischeren Oberfläche. Etherscan ist als Gegenprüfung nützlich, da Revoke.cash gelegentlich Freigaben für neuere oder weniger verbreitete Tokens übersieht.

Unabhängig vom Tool ist der Ablauf derselbe. Lies jeden Spender. Wenn du ihn nicht erkennst, markiere ihn zum Widerruf. Wenn du ihn erkennst, entscheide, ob du ihn noch brauchst und ob du ihn unendlich lassen möchtest. Beachte, dass das Widerrufen eine Schreibtransaktion ist: es kostet Gas, also erledige es gebündelt zu einer Zeit mit niedrigen Gebühren und nicht einzeln während der Stoßzeiten.

So widerrufst du Token-Freigaben Schritt für Schritt

Hier ist der praktische Ablauf, dem erfahrene DeFi-Nutzer tatsächlich folgen. Es wird davon ausgegangen, dass du eine Self-Custody-Wallet wie Rabby, MetaMask, Frame oder Ledger Live verwendest und dass du eine kleine Menge ETH auf der Chain hast, die du aufräumst, genug, um die Gas-Gebühren zu decken.

Öffne Revoke.cash in deinem Browser. Verbinde die Wallet, die du überprüfen möchtest. Die Seite wählt standardmäßig Ethereum Mainnet; wenn sich deine Freigaben auf einer anderen EVM-Chain wie Arbitrum, Polygon oder BNB Chain befinden, wechsle den Netzwerkauswahl oben auf der Seite. Die Seite zieht dann in einem Durchgang jeden Token, den du hältst, und jede aktive Freigabe.

Lies die Liste durch. Klicke für jeden Spender, den du nicht erkennst, oder für jeden Spender, dem du keine dauerhafte Freigabe mehr geben möchtest, auf die Widerrufsschaltfläche daneben. Deine Wallet öffnet eine Transaktionsanfrage, die die Freigabe auf null setzt. Bestätige sie und zahle die Gas-Gebühr.

Für Freigaben, die du behalten, aber verkleinern möchtest, kannst du bei Revoke.cash einen benutzerdefinierten Wert statt null festlegen. Ein gängiges Muster ist es, die Freigabe auf den genauen Betrag für die nächste Transaktion festzulegen, den moderne Wallets automatisch für dich ausfüllen können. Nachdem deine Widerrufstransaktionen bestätigt sind, aktualisiere die Seite und vergewissere dich, dass die Freigabe nun null oder den neuen endlichen Wert anzeigt.

Wiederhole dies für alle anderen Chains, auf denen du nennenswerte DeFi-Aktivitäten hattest. Viele Nutzer sind schockiert, Freigaben auf Chains zu finden, die sie einmal für einen Airdrop genutzt und dann vergessen haben. Jede Chain benötigt ihren eigenen Durchgang, da Freigaben standardmäßig nicht chain-übergreifend sind.

So richtest du künftig endliche Freigaben ein

Die beste einzelne Gewohnheit, die du nach dem Aufräumen deiner Wallet aufbauen kannst, ist es, gar keine unendlichen Freigaben mehr zu unterschreiben. Die Verteidigung ist in die meisten modernen Wallet-UIs eingebaut, aber du musst darauf achten.

Wenn eine dApp nach einer Freigabe fragt, schau dir den Wert an. Wenn der Standardwert die maximale 256-Bit-Zahl ist, bietet deine Wallet den alten unendlichen Pfad an. Wenn der Standardwert der genaue Betrag des Swaps oder der Einzahlung ist, bietet deine Wallet eine endliche Freigabe an. Rabby und Frame verwenden bei bekannten Verträgen standardmäßig endliche Freigaben. MetaMask ist in neueren Versionen zu endlichen Standardwerten übergegangen, ältere Abläufe bieten jedoch weiterhin die Legacy-Option an.

Wenn ein Vertrag eine unendliche Freigabe verlangt und keine endliche Option anbietet, betrachte das als gelbe Flagge. Einige Verträge benötigen tatsächlich eine dauerhafte Freigabe, etwa DEX-Aggregatoren, die durch mehrere Pools routen, die meisten jedoch nicht. Im Zweifelsfall genehmige den genauen Betrag für die Transaktion, die du gerade durchführen willst, und widerrufe oder verkleinere die Freigabe, sobald die Aktion abgeschlossen ist.

Eine weitere praktische Gewohnheit ist es, eine separate „Hot Wallet“ für risikoreiche Aktivitäten wie Airdrop-Farming, Testnet-Interaktionen und das Unterschreiben unbekannter dApps zu verwenden, sowie eine separate „Cold Wallet“ für langfristige Bestände und große DeFi-Positionen. Die Hot Wallet fängt die Phishing-Klicks ab; die Cold Wallet interagiert nur mit auditierten, bekannten Protokollen. Selbst wenn ein Drainer-Kit deine Hot Wallet leert, befindet sich dein Hauptbestand in einer Wallet mit deutlich kleinerem Freigabe-Footprint.

So sieht es aus, wenn etwas schiefläuft

Es lohnt sich, konkret zu beschreiben, wie ein Drain in der Praxis aussieht, denn die Angst vor „meine Genehmigungen werden ausgenutzt“ wird manchmal als abstrakt behandelt. Stell dir vor, du hast vor achtzehn Monaten eine unendliche Genehmigung für USDT an einen kleinen DEX-Router erteilt. Die DEX wurde geschlossen, das Team hat sich neuen Projekten zugewandt, und die Vertragsadresse wurde später von einem anderen Deployer übernommen.

Sechs Monate danach besuchst du eine vertraut aussehende Seite, klickst auf etwas, das wie eine routinemäßige Genehmigung aussieht, und unterschreibst in Wirklichkeit eine bösartige Permit- oder Off-Chain-Autorisierung. Das Drainer-Kit stellt fest, dass deine Wallet gegenüber diesem Router immer noch eine unendliche Freigabe hat. In einer einzigen Transaktion ruft es transferFrom auf und zieht dein gesamtes USDT-Guthaben ab. Die Transaktion ist gültig, die Freigabe war real, und es gibt kein Rollback.

Nun stell dir dieselbe Wallet vor, aber du hast die USDT-Freigabe für diesen Router sechs Monate zuvor widerrufen und durch eine Null ersetzt. Das Drainer-Kit scannt deine Wallet, findet für diesen Token nichts zum Abziehen und geht weiter. Die Kosten für den ursprünglichen Widerruf betrugen wenige Cent an Gas; die Kosten, ihn nicht widerrufen zu haben, waren dein gesamtes USDT-Guthaben. Die Rechnung ist nicht subtil.

Wie du Genehmigungsrisiken clever im Blick behältst

Genehmigungs-Hygiene ist einer der wenigen Bereiche der Krypto-Sicherheit, in denen der Nutzer tatsächlich direkte Kontrolle hat, aber man vergisst sie leicht, sobald die Wallet „läuft“. Zippfeed verfolgt Nachrichten rund um Token-Genehmigungen, einschließlich Protokoll-Exploits, Drainer-Kit-Kampagnen und Wallet-Sicherheitsupdates, mit einer Stimmungsbewertung (bullish, neutral oder bearish) und einer Wichtigkeitsstufe, damit du neue Angriffsmuster erkennen kannst, bevor sie dein Postfach erreichen – und nicht erst, nachdem sie deine Wallet erreicht haben.

Häufig gestellte Fragen

Ist es sicher, Token-Genehmigungen zu widerrufen?
Das Widerrufen einer Genehmigung ist eine der sichersten On-Chain-Aktionen, die du ausführen kannst. Es ändert nur den Allowance-Wert im Zustand des ERC-20-Vertrags, bewegt keine Token und kann nicht dazu genutzt werden, deine Wallet zu leeren. Die einzigen Kosten sind die Gas-Gebühren für die Transaktion. Wenn du unsicher bist, widerrufe zuerst Genehmigungen gegenüber Verträgen, die du nicht kennst. Du kannst sie später jederzeit erneut erteilen, wenn du sie brauchst.
Wie widerrufe ich Token-Genehmigungen auf Etherscan?
Gehe zu Etherscan.io, füge deine Wallet-Adresse in die Suchleiste ein und öffne das Token-Approval-Panel. Dort siehst du jeden Vertrag mit einer Allowance ungleich null über deine Token. Klicke neben jeder Genehmigung, die du löschen möchtest, auf „Revoke“, bestätige die Transaktion in deiner Wallet und zahle die Gas-Gebühr. Denselben Ablauf gibt es auf den Block-Explorern für BNB Chain, Polygon, Arbitrum, Optimism und Base.
Sollte ich alle meine Genehmigungen auf einmal widerrufen?
Alles auf einmal zu widerrufen ist sicher, aber meistens verschwendete Mühe: Du zahlst Gas für Genehmigungen, die du bei deiner nächsten Transaktion ohnehin neu signiert hättest. Besser ist es, zunächst unbekannte und nicht verifizierte Verträge zu widerrufen, unbeschränkte Genehmigungen für selten genutzte Verträge zu verkleinern und nur die begrenzten oder aktiven Genehmigungen für Protokolle beizubehalten, denen du wirklich vertraust und die du aktiv nutzt. Dieser Artikel dient der Aufklärung und ist keine Finanzberatung. Überprüfe Verträge immer selbst, bevor du Genehmigungen erteilst.
Nutzen Drainer-Kits wirklich alte Genehmigungen aus?
Ja. Wallet-Drainer-Kits, die auf kriminellen Marktplätzen verkauft werden, enthalten Module, die die Adresse eines Opfers nach aktiven ERC-20-Allowances durchsuchen und transferFrom für jede einzelne in einer einzigen Transaktion aufrufen. Je mehr alte oder unbekannte Genehmigungen du hast, desto größer ist die Reichweite einer einzelnen Phishing-Signatur. Deine Liste an Genehmigungen kurz und begrenzt zu halten, gehört zu den effektivsten Maßnahmen, um diese Angriffsfläche zu reduzieren.
Verwandte Tokens
$ETH $USDT $USDC