Ein Nutzer verbindet seine MetaMask Wallet Extension mit einer dezentralen Exchange, möchte Token tauschen und wird aufgefordert, einen Smart Contract zu genehmigen. Das ist ein alltägliches Szenario in der DeFi-Welt, aber die Genehmigung selbst ist kein einfaches „Ja” oder „Nein”. Sie ist eine unbegrenzte oder zeitlich befristete Erlaubnis, die der Smart Contract für immer oder eine unbegrenzte Menge an Token ausgeben darf. Wer diese Approvals nicht verwaltet, verschafft Hackern im Fall einer Smart-Contract-Kompromittierung Zugriff auf Tausende von Dollar ohne weitere Authentifizierung.
Das Konzept der Allowances ist für viele Nutzer intransparent, obwohl es fundamental für die Sicherheit jedes Wallet-Inhabers ist. Eine MetaMask wallet extension bietet die Werkzeuge, um Genehmigungen zu überwachen und zu widerrufen, aber der Benutzer muss verstehen, was er genehmigt, wem er es genehmigt, und wann eine Genehmigung ein unnötiges Risiko darstellt. Ohne diese Kontrolle kann ein einzelner bösartiger oder anfälliger Smart Contract zum Einfallstor für den Diebstahl aller freigegebenen Vermögenswerte werden.
Was ein Allowance wirklich bedeutet
Ein Allowance ist eine Genehmigung auf Blockchain-Ebene, die einem Smart Contract erlaubt, Token aus einer Wallet zu bewegen, ohne dass der Nutzer jede einzelne Transaktion erneut unterzeichnen muss. Das ermöglicht nahtlose DeFi-Interaktionen: Ein Nutzer genehmigt einen Liquidity-Pool, kann dann mehrfach handeln, ohne die Wallet ständig zu aktivieren. Aus technischer Perspektive ist ein Allowance ein ERC-20-Standard-Funktionsaufruf, der einen Betrag speichert, den die Vertragadresse abheben darf.
Das Problem entsteht durch zwei Designs-Entscheidungen. Erstens können Allowances unbegrenzt sein – geschrieben als eine sehr große Zahl (praktisch unendlich für den Blockchain-Kontext). Zweitens können sie für Monate oder Jahre bestehen bleiben. Ein Smart Contract mit einer unbegrenzten Allowance kann jeden Tag alle verfügbaren Token dieser Art abziehen, solange die Genehmigung existiert. Wenn dieser Vertrag später gehackt wird oder fehlerhaften Code enthält, hat der Angreifer freien Zugriff auf das gesamte Guthaben.
Die MetaMask wallet extension zeigt diese Genehmigungen nicht standardmäßig im Hauptfenster. Sie sind im Blockchain-Netzwerk registriert und können mit Block-Explorer wie Etherscan überprüft werden, indem man die eigene Wallet-Adresse eingibt und nach „Token Approvals” filtert. Dies ist ein wichtiger Schritt, den viele Nutzer nicht kennen oder nicht regelmäßig durchführen. Ein Allowance kann existieren, ohne dass der Benutzer sich daran erinnert, sie genehmigt zu haben, besonders wenn mehrere Wochen vergangen sind.
Einige DeFi-Plattformen verwenden gestaffelte Allowances – sie genehmigen 100 Token auf einmal, nicht alle 10.000, die vorhanden sind. Dies reduziert das Risiko einer einzelnen Kompromittierung, erhöht aber die Transaktionsgebühren, da jede neue Charge eine separate Approval erfordert. Es ist ein bewusstes Sicherheits-und-Komfort-Abwägung, die jede Plattform unterschiedlich trifft.
Wie man Allowances in MetaMask überwacht
Die native MetaMask wallet extension zeigt Allowances nicht direkt in der Benutzeroberfläche. Stattdessen müssen Nutzer externe Tools verwenden. Der einfachste Weg ist Etherscan: Man loggt sich nicht an, sondern sucht einfach nach der eigenen Wallet-Adresse, klickt auf den „Token Approvals”-Reiter und sieht alle Genehmigungen für ERC-20-Token. Ähnliche Token-Approval-Tracker existieren für andere EVM-kompatible Ketten wie Polygon, Arbitrum und Optimism.
Eine zweite Methode ist die Nutzung spezialisierter Portfolio-Tools wie Revoke.cash oder Etherscan-integrierten Approvalscannen. Diese Websites zeigen nicht nur die Approvals, sondern ermöglichen auch direkt aus der Web-Oberfläche, Genehmigungen zu widerrufen. Die Nutzer verbinden ihre Wallet (nicht mit einem privaten Schlüssel, sondern durch das Web3-Wallet-Interface) und können jeden Approval mit wenigen Klicks aufheben. Revoke.cash markiert besonders alte oder verdächtige Approvals und warnt vor bekannten bösartigen Verträgen.
Ein dritter Ansatz ist das manuelle Überprüfen durch Token-Balances und das Studium von Transaktionshistorien. Wenn eine DeFi-Plattform verwendet wurde, kann man die Adresse dieser Plattform oder des Pools in Etherscan eintragen und alle ihre Interaktionen sehen. Dies ist arbeitsintensiv, aber es baut ein Verständnis dafür auf, wem man tatsächlich Zugriff gegeben hat. Ein Nutzer mit drei aktiven DeFi-Positionen könnte schnell fünf bis zehn Approvals angesammelt haben, ohne es bewusst zu bemerken.
MetaMask selbst plant, die Transparenz zu verbessern, aber aktuell verlässt sich die Plattform darauf, dass Nutzer externe Quellen nutzen. Das ist unbefriedigend, aber es ist auch ein Hinweis auf die dezentrale Natur von Kryptowährungen: Es gibt keine zentrale Instanz, die alle Approvals für alle Nutzer verwaltet. Jeder Netzwerk-Node und jeder Block Explorer kann die Informationen haben, aber sie müssen aktiv abgefragt werden.
Der Unterschied zwischen limitierten und unbegrenzten Approvals
Eine begrenzte Genehmigung bedeutet, dass ein Smart Contract genau 500 Token abheben darf, nicht mehr und nicht weniger. Sind diese 500 Token aufgebraucht oder übertragen worden, muss eine neue Approval erfolgen. Das ist sicherer, weil das maximale Risiko bekannt und begrenzt ist. Eine unbegrenzte Genehmigung bedeutet praktisch: „Hiermit erlaubst du diesem Vertrag, jederzeit alle Token dieser Art abzuziehen, die in dieser Wallet existieren.”
DeFi-Plattformen verwenden oft unbegrenzte Approvals, weil sie benutzerfreundlicher sind. Der Nutzer muss nicht ständig neue Genehmigungen erteilen, jede Transaktion ist schneller, und die Gebühren sinken, da nicht ständig ein Approval-Transaktion anfällt. Für einen langfristigen Nutzer einer Plattform kann eine unbegrenzte Genehmigung praktisch sein. Für einen einmaligen Nutzer oder bei einer neuen oder ungetesteten Plattform ist es reckless.
Ein vernünftiges Vorgehen ist eine gestaffelte Annäherung: Unbegrenzte Approvals nur für etablierte, gut geprüfte Protokolle wie Uniswap oder Aave. Begrenzte Approvals für neuere oder kleinere Plattformen. Und nach jeder Transaktion sollte überprüft werden, ob die Genehmigung noch existiert. Wenn die Interaktion abgeschlossen ist, kann die Approval widerrufen werden. Diese zusätzliche Transaktion kostet Gas, aber für Nutzer, die mehrere tausend Dollar bewegen, ist die Sicherheit die Gebühr wert.
Ein oft übersehener Punkt ist, dass multiple Approvals an verschiedene Adressen des gleichen Protokolls existieren können. Ein Nutzer könnte Uniswap V2 und Uniswap V3 jeweils separate Token-Genehmigungen gegeben haben, weil sie unter verschiedenen Smart-Contract-Adressen laufen. Beim Überprüfen von Approvals sollte man auf die spezifische Vertragadresse achten, nicht nur auf den Protokollnamen.
Wie man Allowances sicher widerruft
Das Widerrufen eines Allowance ist eine normale Blockchain-Transaktion, die Gas kostet. Auf Ethereum kann das zwischen $2 und $20 liegen, je nach Netzwerk-Auslastung. Auf billigeren Ketten wie Polygon oder Optimism sind es oft weniger als ein Dollar. Der Prozess ist unkompliziert: Man loggt sich bei Revoke.cash an, wählt ein Allowance aus und klickt auf „Revoke”. Die Wallet (MetaMask oder eine andere) fordert die Unterschrift an, man bestätigt, und die Transaktion wird ins Netzwerk gesendet.
Eine wichtige Vorsichtsmaßnahme: Das Widerrufen sollte nur über bekannte, vertrauenswürdige Websites erfolgen. Revoke.cash ist die etablierte Option, aber es existieren auch Malware-Seiten, die vorgeben, Approvals zu verwalten, aber stattdessen andere Transaktionen unterschwellig in die Signaturanfrage einbinden. Man sollte die URL doppelt überprüfen und sicherstellen, dass man auf der echten Seite ist. Browser-Lesezeichen oder direkte Links von verifizierten Quellen sind sicherer als eine Google-Suche.
Ein Nutzer kann auch direkt über MetaMask wallet extension mit einem Smart Contract interagieren, um ein Allowance auf Null zu setzen. Das erfordert aber das Verstehen von ABI-Interfaces und direktem Contract-Schreiben, was für technisch weniger erfahrene Nutzer nicht praktisch ist. Die vereinfachte Methode über Revoke.cash ist für die meisten Menschen die richtige Wahl.
Nach dem Widerruf sollte man überprüfen, dass die Transaktion bestätigt wurde. Das kann man durch das Eingeben der Transaktions-Hash in einen Block Explorer tun. Erst wenn die Transaktion „Success” zeigt und mehrere Blöcke bestätigt sind, ist das Allowance wirklich weg. Eine beste Praxis ist auch, eine Kopie der wichtigen Transaktions-Hashes lokal zu speichern oder zu notieren, besonders bei größeren Vermögenswerten.
Smart Contract Sicherheit und das Risiko von gehackten Protocols
Das tiefere Problem ist, dass ein Allowance nur nützlich ist, wenn der Smart Contract, dem man Zugriff gibt, sicher ist. Im Jahr 2023 und 2024 gab es mehrfach Fälle, in denen bekannte DeFi-Protokolle gehackt oder mit kritischen Bugs entdeckt wurden, nachdem sie monatelang gelaufen waren. Ein Nutzer mit einem unbegrenzten Allowance war in diesen Fällen sofort stark betroffen.
Dies ist nicht das Verschulden von MetaMask – die Wallet selbst kann einen fehlerhaften Vertrag nicht verhindern. Es ist aber ein Grund, warum die metamask wallet extension mit äußerster Vorsicht und klarem Verständnis der Risiken verwendet werden sollte. Wenn man sein Geld auf defi plattformen ausleiht oder Liquidität bereitstellt, trägt man das Risiko eines Smart-Contract-Fehlers. Ein Allowance verschärft dieses Risiko, weil es dem Protokoll ermöglicht, Geld ohne zusätzliche Authentifizierung zu bewegen.
Etablierte Protokolle mit Audits durch renommierte Sicherheitsfirmen (wie OpenZeppelin oder Trail of Bits) bieten höhere Sicherheitsgarantien, sind aber nicht risikolos. Kleine oder neue Protokolle sollten mit kleinen Testmengen begonnen werden, und Approvals sollten zeitlich begrenzt sein oder sofort nach Gebrauch widerrufen werden. Ein nutzerzentriertes Sicherheitsmodell bedeutet nicht nur, private keys zu kontrollieren – es bedeutet auch, zu kontrollieren, wer auf diese Keys einwirken darf.
Es existiert keine zentrale Warndatenbank für gehackte Contracts. Nutzer müssen aktiv in Telegram, Discord oder Twitter-Gruppen von Protocols folgen, um schnell von Sicherheitsvorfällen zu erfahren. Ein gehacktes Protokoll, von dem kein einer außer technisch versierten Beobachtern weiß, kann tagelang Funds saugen, bevor es allgemein bekannt wird. Dies ist ein weiterer Grund, warum ein sichere wallet nicht nur aus sicherer Hardware oder starken Passwörtern besteht, sondern auch aus aktivem Monitoring.
Blockchains und unterschiedliche Allowance-Standards
Der ERC-20-Standard ist auf Ethereum und EVM-kompatiblen Ketten Standard für Token-Genehmigungen. Aber andere Blockchains haben verschiedene Implementierungen. Solana nutzt ein anders strukturiertes Approve-System, Bitcoin hat native Allowances überhaupt nicht. Ein Nutzer mit einer blockchain wallet, die mehrere Netzwerke unterstützt, muss verstehen, dass das Allowance-Konzept nicht universell ist.
MetaMask wallet extension funktioniert primär mit EVM-Ketten – Ethereum, Polygon, Arbitrum, Optimism, BNB Smart Chain und Ähnliche. Auf all diesen Ketten sind Allowances das gleiche Konzept. Aber wenn ein Nutzer auch mit Solana arbeitet, sollte er verstehen, dass die Sicherheitsmodelle unterschiedlich sind. Ein Token auf Solana kann mit einer MetaMask-kompatiblen Wallet technisch nicht verwaltet werden, ohne zu einem Solana-spezifischen Wallet zu wechseln.
Für einen Multi-Chain-Nutzer ergibt sich die Komplexität aus der Notwendigkeit, Approvals auf mehreren Ketten zu tracken. Ein Allowance auf Ethereum ist isoliert; es gilt nicht auf Polygon. Ein Nutzer mit ETH auf Ethereum und Polygon muss separate Approvals auf jeder Kette überprüfen und verwalten. Das erfordert eine zusätzliche Sorgfalt, wenn man zwischen Netzwerken wechselt.
Praktisches Allowance-Management als Sicherheitsgewohnheit
Eine solide Praxis für Allowance-Management sieht so aus: Monatlich überprüfe ich meine Wallet-Adresse auf Etherscan oder Revoke.cash auf alle aktiven Token-Genehmigungen. Ich führe eine kurze Liste mit dem Namen des Protokolls, dem Genehmigungsdatum und dem Status (aktiv oder widerrufen). Für jedes Protokoll, das ich nicht mehr nutze oder das verdächtig lange keine Transaktion hatte, widerrufe ich das Allowance. Für neue Protokolle gebe ich nur begrenzte Genehmigungen oder nutze den höchsten angebotenen Betrag, nie „unlimited”.
Ein Fehler, den viele Nutzer machen, ist das Vergessen, dass eine Genehmigung unbegrenzt besteht. Eine Person könnten einen Token auf DEX X vor drei Monaten getauscht haben, die Genehmigung ist immer noch aktiv, und niemand überprüft es bis zum nächsten Security-Vorfall. Das ist fahrlässig, wenn der Betrag bedeutend war. Eine bessere Routine ist: Nach jeder DeFi-Transaktion, besonders wenn kein regelmäßiger Nutzen geplant ist, widerrufe ich die Genehmigung.
Für einen Nutzer mit mehreren hundert oder mehreren tausend Dollar in einem Wallet ist dieses Level an Sorgfalt nicht optional. Die Kosten für das Widerrufen von fünf bis zehn alten Allowances (etwa $10 bis $100 in Gas-Gebühren) sind vernachlässigbar gegen das Risiko, dass ein gehackter Protokoll plötzlich alle freigegebenen Funds abziehen kann. Ein sorgfältiger Umgang mit Allowances ist ein Zeichen eines erfahrenen und sicherheitsbewussten Kryptowährungsnutzers.
Häufig gestellte Fragen
Kann jeder meine Token-Allowances sehen?
Ja, Allowances sind öffentliche Blockchain-Daten. Jeder kann deine Wallet-Adresse in Etherscan eingeben und sehen, welche Smart Contracts die Berechtigung haben, deine Token zu bewegen. Dies ist Teil der Transparenz der Blockchain und kann nicht verborgen werden. Nur du kannst diese Genehmigungen widerrufen.
Ist es sicher, eine MetaMask wallet extension zu verwenden, wenn ich viele Allowances habe?
MetaMask selbst ist sicher, aber die Smart Contracts, denen du Allowances gegeben hast, möglicherweise nicht. Du solltest regelmäßig überprüfen, welche Contracts Zugriff auf deine Tokens haben, und alle verdächtigen oder unbenutzte Approvals widerrufen. Die Sicherheit deines Wallet hängt ab von den Protokollen, auf die du Zugriff gibst.
Kann ich ein Allowance ändern, ohne es zu widerrufen?
Technisch ja, aber die meisten EVM-kompatiblen Tokens erlauben es dir, einen neuen Approval-Betrag zu setzen, der den alten ersetzt. Es ist jedoch einfacher und sicherer, zuerst auf null zu setzen (widerrufen) und dann einen neuen Approval zu erstellen. Das verhindert, dass ein fehlerhafter Contract einen alten und neuen Betrag kombiniert.