Kurz erklärt: Approval-Phishing (auch Allowance-Phishing) ist eine Betrugsmethode im Bereich der Smart Contracts, bei der ein Opfer dazu gebracht wird, einer von Angreifern kontrollierten Adresse eine Ausgabeberechtigung (Approval) für seine Token zu erteilen. Anders als beim direkten Diebstahl privater Schlüssel bleibt die Wallet im Besitz des Opfers, während der Angreifer die freigegebenen Guthaben jederzeit abziehen kann.
Technischer Hintergrund
Token-Standards wie ERC-20 auf Ethereum sehen eine approve-Funktion vor, mit der ein Nutzer einem anderen Vertrag erlaubt, in seinem Namen eine bestimmte Menge Token zu bewegen. Diese Funktion ist für den regulären Betrieb dezentraler Börsen (DEX) und anderer DeFi-Anwendungen notwendig.
Beim Approval-Phishing wird diese Mechanik missbraucht: Das Opfer signiert eine Freigabe, die nicht an einen legitimen Vertrag, sondern an eine bösartige Adresse geht. Häufig wird eine unbegrenzte Freigabe (unlimited approval) angefordert, sodass der gesamte Bestand des jeweiligen Tokens abgezogen werden kann.
Ablauf und Erscheinungsformen
- Gefälschte Websites: Nachgebaute DEX-, Mint- oder Airdrop-Seiten fordern das Opfer zur Bestätigung einer Transaktion auf, die tatsächlich ein Approval ist.
- Irreführende Signaturen: Neben klassischen
approve-Aufrufen kommen auch signierte Nachrichten wie Permit (EIP-2612) oder Permit2 zum Einsatz, die keine sichtbare On-Chain-Transaktion erzeugen und dadurch schwerer zu erkennen sind. - Social Engineering: Die Masche wird oft mit Giveaway-Betrug oder Impersonation kombiniert, um Vertrauen aufzubauen.
Erkennung und Gegenmassnahmen
Wallets zeigen bei einer Freigabe die anfordernde Vertragsadresse und den Freigabebetrag an. Warnsignale sind unbekannte Adressen und unbegrenzte Beträge. Zur Risikobegrenzung wird empfohlen, Freigaben auf die tatsächlich benötigte Menge zu beschränken und bestehende Approvals regelmässig zu überprüfen.
Über Werkzeuge zur Approval-Verwaltung (etwa Revoke-Funktionen von Block-Explorern) lassen sich erteilte Berechtigungen widerrufen. Der Widerruf verhindert künftige Abzüge, macht bereits erfolgte Transaktionen aber nicht rückgängig.
Häufige Fragen
Was unterscheidet Approval-Phishing vom klassischen Phishing?
Beim klassischen Phishing werden Passwörter oder private Schlüssel gestohlen. Beim Approval-Phishing behält das Opfer seine Wallet, erteilt aber einer fremden Adresse die Berechtigung, Token zu bewegen. Der Angreifer braucht den privaten Schlüssel gar nicht.
Warum ist eine unbegrenzte Freigabe gefährlich?
Eine unbegrenzte Freigabe erlaubt es dem berechtigten Vertrag, beliebig viele Token des jeweiligen Typs abzuziehen, auch zu einem späteren Zeitpunkt. Ist die Adresse bösartig, kann der gesamte Bestand entwendet werden.
Was sind Permit-Signaturen?
Permit (EIP-2612) und Permit2 ermöglichen Freigaben durch eine signierte Nachricht statt einer On-Chain-Transaktion. Sie sind bequem, werden aber beim Approval-Phishing genutzt, weil die Signaturaufforderung für Laien schwer einzuordnen ist.
Wie lassen sich erteilte Freigaben widerrufen?
Über Approval-Verwaltungswerkzeuge von Block-Explorern oder Wallets können bestehende Berechtigungen widerrufen werden. Dabei fällt eine reguläre Netzwerkgebühr an. Der Widerruf schützt nur vor künftigen, nicht vor bereits erfolgten Abzügen.
Woran erkennt man eine bösartige Freigabe?
Verdächtig sind Freigaben an unbekannte oder frisch erstellte Vertragsadressen, unbegrenzte Beträge sowie Aufforderungen, die von unerwarteten oder gefälschten Websites ausgehen. Im Zweifel sollte die Transaktion abgebrochen werden.
Zusammenfassung
Approval-Phishing nutzt die legitime Freigabe-Funktion von Token-Standards wie ERC-20 aus, indem Opfer einer bösartigen Adresse eine Ausgabeberechtigung erteilen. Der Angreifer kann daraufhin freigegebene Guthaben abziehen, ohne den privaten Schlüssel zu besitzen. Schutz bieten die Prüfung von Vertragsadresse und Betrag sowie das Widerrufen nicht mehr benötigter Freigaben.
Weiterführende Quellen
- Ethereum: ERC-20 Token Standard: ethereum.org
- EIP-2612: Permit Extension for EIP-20 Signed Approvals: eips.ethereum.org