Die meisten NFT-„Drains“ passieren in dem Moment, in dem du eine Wallet-Abfrage signierst, nicht weil ein Smart Contract gehackt wurde. Ein legitimer Mint ruft safeMint auf und fordert dich auf, Gas zu bezahlen, während eine Drainer-Seite dich dazu verleitet, setApprovalForAll, permit, increaseAllowance oder eth_sign zu signieren. Dadurch kann ein Angreifer deine Tokens oder NFTs später verschieben. Der beste einzelne Schutz ist eine Hot Wallet, die nichts Wertvolles enthält, plus Prüfungen vor dem Signieren wie Revoke.cash und Pocket Universe.
Auf einen Blick
- Echte Mints kosten Gas und rufen safeMint auf. Die meisten Fake-Mints verlangen stattdessen eine Signatur oder eine Token-Freigabe, die einem Contract Berechtigungen über deine Assets gibt.
- Die vier Signaturmuster, bei denen du den Tab schließen solltest, sind setApprovalForAll, permit, increaseAllowance sowie jede eth_sign- oder personal_sign-Abfrage, die keine einfache Login-Nachricht ist.
- EIP-712 Typed Data ist für Menschen lesbar: Wenn Domain, Contract-Adresse oder Aktionsname nicht zu dem passen, was die Website angeblich tun will, behandle es als feindlich.
- Nutze eine Burner Wallet für Mints, widerrufe veraltete Freigaben auf Revoke.cash und simuliere jede Transaktion mit Pocket Universe, bevor du sie in deiner Wallet bestätigst.
Was ist ein Fake-NFT-Mint, und warum sieht er wie ein normaler aus?
Ein Fake-NFT-Mint ist eine Webseite, ein Discord-Link oder ein Twitter-Beitrag, der die Mint-Seite einer echten Collection imitiert, damit du etwas signierst, das du nicht verstehst. Das Ziel ist nicht, dir ein NFT zu geben. Das Ziel ist, eine signierte Nachricht oder eine On-Chain-Freigabe zu erhalten, mit der der Angreifer später deine bestehenden Tokens oder NFTs verschieben kann. Die Seite lädt normalerweise, deine Wallet öffnet sich, und du klickst auf Bestätigen, ohne zu lesen, weil die Formulierung plausibel wirkt, der Countdown läuft und das Artwork überzeugend ist.
Zwei Dinge unterscheiden diesen Angriff von älterem Phishing. Erstens muss der Angreifer oft gar keinen bösartigen Contract deployen. Er kann die Standardschnittstellen nutzen, die echte Collections ohnehin verwenden, etwa ERC-721s setApprovalForAll, und dich einfach auf eine von ihm kontrollierte Contract-Adresse lenken. Zweitens kann der Angriff auf zwei Transaktionen aufgeteilt werden. Die erste Transaktion ist klein und wirkt harmlos, manchmal sogar ein kostenloser Mint, der nichts mintet. Die zweite wird später ausgeführt, manchmal Wochen später, von einem Bot, der transferFrom für jede freigegebene Adresse aufruft. Bis du es bemerkst, ist deine Wallet leer.
Für Sammler ist das wichtig, weil Minting der eine Moment in Krypto ist, in dem von dir erwartet wird, etwas zu signieren, das du nicht selbst geschrieben hast. Das Einloggen bei einer CEX (centralized exchange) oder der Kauf auf Uniswap verlangt nicht, dass du eine Typed-Data-Payload liest. Minting schon, was bedeutet, dass der Einstieg ins NFT-Sammeln zugleich der einfachste Ort ist, um eine Wallet zu leeren. Behandle die Signaturabfrage so, wie ein Banker eine Überweisungsanfrage behandeln würde: Lies das Ziel, lies den Betrag, und wenn die Formulierung nicht zur Geschichte auf dem Bildschirm passt, geh weg.
Die echten Risiken: Wie Drainer-Kits Wallets tatsächlich leeren
Die meisten modernen NFT-Drainer werden als Service verkauft. Betreiber zahlen ein Abonnement, fügen eine Contract-Adresse oder eine Wallet-Adresse ein, an die geleert werden soll, und erhalten eine Phishing-Seite, die wie ein Mint, ein Airdrop-Claim oder ein kostenloser Mint aussieht. Die Kits enthalten Anti-Erkennungsfunktionen, die Domains rotieren, die Freigabe in einer Untertransaktion verstecken und sogar einen erfolgreichen Mint simulieren, damit das Opfer eine gefälschte Bestätigung sieht. In der zweiten Hälfte von 2024 und im Verlauf von 2025 verfolgten On-Chain-Forscher bei Firmen wie Scam Sniffer und Blockaid Drainer-Volumina in Höhe von Hunderten Millionen Dollar pro Jahr, wobei ein bedeutender Anteil speziell NFT-Mint-Seiten zugeschrieben wurde.
Es gibt vier Signaturmuster, die für die große Mehrheit dieser Drains verantwortlich sind. Sie beim Namen zu kennen, ist das größte einzelne Upgrade, das du für deine eigene Sicherheit machen kannst. Keines davon verlangt, dass du ETH an den Angreifer sendest. Sie verlangen nur, dass du etwas signierst, weshalb die Wallet-Abfrage harmlos aussieht.
Neben der Signatur selbst verlassen sich Drainer auf einige soziale Tricks. Sie geben sich als offizieller Discord eines Projekts aus, minten unter einem Namen, der nur um ein Zeichen von der echten Collection abweicht, und timen ihre Drops so, dass sie mit echten Mints zusammenfallen, damit das Rauschen das Signal überdeckt. Außerdem platzieren sie gefälschte Kommentare unter dem Projekt auf X/Twitter und bezahlen für gesponserte Links bei Google. Wenn du die Mint-Seite über eine Suchanzeige, eine DM oder einen Discord-Link von jemandem erreicht hast, den du nicht kennst, verlangsame das Tempo, bevor du irgendetwas signierst.
Die ehrliche Wahrheit ist, dass dich keine Routine zur Signaturprüfung zu 100 % der Zeit retten wird. Drainer-Autoren aktualisieren ihre Payloads, damit sie legitime Abfragen nachahmen, und manche nutzen echte Mint-Contracts, die vom Projekt selbst deployt wurden. Das Ziel dieses Artikels ist nicht, dich unverwundbar zu machen. Das Ziel ist, die billigen Angriffe offensichtlich zu machen, sodass nur die anspruchsvollen Risiken übrig bleiben, die die meisten Angreifer überspringen werden, weil es leichtere Opfer gibt.
Die vier Signaturen, die du niemals blind signieren solltest
- setApprovalForAll: „Erlaube diesem Contract, alle deine NFTs (oder alle einer Collection) jederzeit und dauerhaft zu bewegen, bis du die Freigabe widerrufst.“ Ein legitimer Mint braucht das fast nie. Wenn eine Mint-Seite danach fragt, behandle die Website als feindlich.
- permit (ERC-2612): „Erlaube einem Spender, zu einem späteren Zeitpunkt einen festen Betrag deines Tokens zu nehmen, ohne Ablaufdatum, nur indem permit aufgerufen wird.“ Drainer verpacken das in einen gefälschten Mint-Button. Der freigegebene Token ist normalerweise ein Stablecoin oder ein Blue-Chip wie USDC oder USDT, nicht ein NFT.
- increaseAllowance / approve: „Erlaube einem Spender, einen bestimmten Betrag eines Tokens zu bewegen.“ Wie permit, aber Betrag und Token sind ausgeschrieben. Lies beides. Wenn der Token etwas ist, das du hältst, signiere nicht.
- eth_sign / personal_sign mit einer URL oder einem Hex-Blob: „Signiere diese Nachricht.“ Echte Websites nutzen personal_sign nur für Logins, und die Nachricht liest sich wie normales Englisch. Wenn die Abfrage eine lange Hex-Zeichenfolge ist oder „opensea“, „blur“ oder eine Marketplace-URL innerhalb einer personal_sign-Payload enthält, handelt es sich fast sicher um eine Off-Chain-Order oder einen Seaport-Listing-Exploit.
safeMint vs. setApprovalForAll: Was ein legitimer Mint tatsächlich macht
Der nützlichste Vergleich für Sammler ist der zwischen einer echten Mint-Signatur und einer Drainer-Signatur. Im Wallet-Popup sehen sie oberflächlich ähnlich aus, aber on-chain bewirken sie völlig unterschiedliche Dinge, und der Unterschied ist sichtbar, wenn du weißt, worauf du achten musst.
Ein legitimer ERC-721-Mint ruft typischerweise eine Funktion namens safeMint auf, oder mint, publicMint, teamMint, je nach Contract. Wenn dein Wallet aufpoppt, wirst du aufgefordert, eine Transaktion zu senden, die Gas kostet, und die Transaktion hat eine klare „To“-Adresse, die mit dem offiziellen Mint-Contract übereinstimmt, den das Projekt angekündigt hat. Der Funktionsname ist in deinem Wallet lesbar. Das Wertfeld ist der Mint-Preis, angegeben in ETH oder einem Stablecoin. Es wird keine separate Approval angefordert, weil der Contract deine bestehenden Assets nicht anfassen muss: Er wird dir einen neuen Token minten. Genau darum geht es.
Ein Drainer-Mint macht eines von zwei Dingen. Die billige Version überspringt den on-chain Mint komplett und fordert dich auf, eine off-chain EIP-712-Nachricht zu signieren, die eine Order für einen Marketplace wie Blur, OpenSea Pro oder LooksRare enthält. Die gefährliche Version fordert dich auf, setApprovalForAll für eine Contract-Adresse aufzurufen, die der Angreifer kontrolliert. Diese hat dann unbegrenzte Berechtigung, jederzeit in der Zukunft per transferFrom jedes NFT in deinem Wallet zu übertragen, solange du die Berechtigung nicht widerrufst.
Das Wallet-Prompt Zeile für Zeile lesen
- To: Sollte die offizielle Contract-Adresse sein. Verifiziere sie auf der eigenen Website des Projekts, nicht über einen Link, den dir jemand geschickt hat. Ein abweichender Buchstabe oder eine abweichende Zahl reicht aus, um dich zu einem Angreifer-Contract umzuleiten.
- Function: Sollte safeMint, mint oder eine ähnlich benannte Funktion sein. Es sollte nicht setApprovalForAll, approve oder eine Methode mit einem Namen wie „claimRewards“ oder „airdrop“ sein.
- Value: Sollte der Mint-Preis in ETH oder einem Stablecoin sein. Es sollte bei einem „Free Mint“, der im nächsten Prompt eine Approval verlangt, nicht null sein. Zero-Value-Mints, die Approvals anfordern, sind ein bekanntes Drainer-Muster.
- Spender / Approval target: Wenn das Prompt überhaupt eine Approval erwähnt, sollte der Spender ein Contract sein, den du erkennst, und du solltest sie trotzdem auf Revoke.cash widerrufen, nachdem der Mint abgeschlossen ist.
Wie du EIP-712 Typed Data liest, bevor du signierst
EIP-712 ist der Standard, der Signaturanfragen lesbar macht. Statt dich aufzufordern, einen Hex-Blob zu signieren, zeigt dir das Wallet eine strukturierte Payload mit benannten Feldern wie „from“, „to“, „value“, „deadline“ und „nonce“. Das ist eine Verbesserung der Benutzerfreundlichkeit, aber nur, wenn du sie tatsächlich liest. Die meisten Sammler tun das nicht, weshalb Drainer EIP-712 lieben: Die Payloads sehen offiziell aus.
Bei einem legitimen NFT-Mint haben die Typed Data normalerweise keinen Spender, keine Permit-Felder und keinen Token-Contract. Dort könnte „Minting 1 NFT for 0.08 ETH“ stehen, mit deiner Wallet-Adresse als Empfänger. Bei einer Listing-Signatur im Stil von Blur oder OpenSea enthält die Payload einen Orderbuch-Eintrag mit Preisen, Ablaufzeiten und einem Counter. Bei einem Drainer enthält die Payload normalerweise ein Permit-Objekt mit deinem Stablecoin-Guthaben als Wert oder eine Seaport-Order, die eines deiner wertvollen NFTs für null ETH listet.
Eine Checkliste für EIP-712-Popups
- Domain: „name“ und „version“ sollten zum Projekt passen. Eine legitime Blur-Order sagt „Blur“, eine legitime OpenSea-Order sagt „Seaport“, und eine legitime LooksRare-Order sagt „LooksRare Exchange“. Wenn die Domain etwas wie „MintNFT-Free“ ist oder das Versionsfeld leer ist, brich ab.
- Primary type: Sollte zu dem passen, was die Website angeblich tut. Eine Mint-Website, die einen Typ „Permit“ oder „Order“ zeigt, ist ein Warnsignal.
- Token address: Wenn ein Token erwähnt wird, füge die Contract-Adresse in einen Block Explorer ein. Stelle sicher, dass es der echte USDC, USDT, WETH oder der Token ist, den die Website behauptet, und kein Lookalike-Token mit demselben Namen.
- Amount: Wenn ein Permit oder eine Approval einen Betrag nennt, sollte es eine normale Transaktionsgröße sein. Alles, was nahe an deinem gesamten Guthaben liegt, oder alles, was den speziellen „unlimited“-Sentinel-Wert verwendet, oft 2^256 - 1, solltest du ablehnen.
- Nonce and deadline: Legitime Nachrichten haben eine Deadline in der Zukunft und eine Nonce, die zu deinem Wallet passt. Alte Nonces und fehlende Deadlines sind Anzeichen für einen Replay oder eine handgefertigte Payload.
Der „Free Mint“, der eine Approval verlangt: ein durchgerechnetes Beispiel
Das ist 2024 und 2025 das häufigste Drainer-Muster, und es lohnt sich, es Schritt für Schritt durchzugehen, weil Sammler am häufigsten darauf hereinfallen. Ein Twitter-Konto gibt sich als echtes Projekt aus und kündigt an, dass Inhaber einer Partner-Collection ein kostenloses NFT minten können. Der Link führt zu einem Klon der echten Mint-Seite. Der Mint-Button löst nacheinander zwei Wallet-Prompts aus.
Das erste Prompt ist ein personal_sign oder eth_sign für eine „Verifizierungs“-Nachricht. Der Angreifer hofft, dass du signierst, ohne zu lesen, weil es wie ein Login aussieht. Das zweite Prompt ist setApprovalForAll für den Contract des Angreifers, oft beschränkt auf eine Blue-Chip-Collection wie Pudgy Penguins oder Bored Apes. Nachdem du bestätigst, mintet die Seite dir entweder ein wertloses NFT oder schlägt stillschweigend fehl. In beiden Fällen hat der Angreifer nun die Approval, um deine echten NFTs zu bewegen.
Die Verteidigung ist mechanisch. Ein echter Free Mint kostet entweder Gas und ruft safeMint auf, oder es ist ein Merkle-Claim, der eine Funktion namens claim, claimAirdrop oder ähnlich aufruft und dir einen Token schreibt. Er muss nichts genehmigen lassen. Sobald ein „Free Mint“ irgendeine Art von Approval oder Signatur verlangt, die kein einfacher Login ist, gehe vom Schlimmsten aus. Schließe den Tab, finde das Projekt über dein eigenes Lesezeichen und bestätige es mit dem Team in Discord, bevor du irgendetwas anderes tust.
Häufige Verkleidungen desselben Angriffs
- „Verify you are human“-Prompts, die ein personal_sign auf eine lange Hex-Zeichenfolge verlangen.
- „Claim your gas refund“-Buttons, die ein Permit auf USDC öffnen.
- „List your NFT for free“-Buttons auf gefälschten Marketplace-Seiten, die statt eines on-chain Listings eine Seaport- oder Blur-Order-Signatur erzeugen.
- „Bridge rewards“ und „snapshot registrations“, die setApprovalForAll für einen Multisend-Contract verlangen.
Wie du ein Wallet einrichtest, das eine schlechte Signatur überlebt
Selbst bei perfekter Signatur-Hygiene wirst du irgendwann etwas signieren, das du nicht beabsichtigt hast. Die Frage ist, wie viel du verlierst, wenn es passiert. Die Standardantwort professioneller Sammler lautet, zwei Wallets zu verwenden: ein Hot Wallet zum Minten und Handeln und ein Cold Wallet zur Aufbewahrung. Das Hot Wallet enthält nichts, dessen Verlust du dir nicht leisten kannst. Das Cold Wallet hält die Blue-Chips und verbindet sich nie mit Mint-Seiten.
Das klingt paranoid, bis du es bezifferst. Ein Burner Wallet kostet nichts und ist in zehn Minuten eingerichtet. Ein gedrainter Bored Ape kostet sechsstellige Beträge und kann nicht ersetzt werden. Die Asymmetrie ist so extrem, dass „immer einen Burner verwenden“ im NFT-Sammeln dem kostenlosen Geld am nächsten kommt.
Operative Checkliste vor jedem Mint
- Verwende ein Burner Wallet, das nur mit dem ETH finanziert ist, das für Gas und den Mint-Preis benötigt wird.
- Simuliere die Transaktion mit Pocket Universe, Blowfish oder Wallet Guard, bevor du in deinem echten Wallet bestätigst.
- Prüfe Approvals auf Revoke.cash direkt nach dem Minten. Wenn der Mint irgendeine Approval angefordert hat, widerrufe sie, bevor du irgendetwas anderes tust.
- Widerrufe am nächsten Tag erneut. Manche Drainer nutzen verzögerte Ausführung, um unmittelbare Widerrufsgewohnheiten zu umgehen.
- Minte niemals aus einem Wallet, das Seed-Phrase-abgeleitete Assets hält, etwa einem Hot-Side-Konto eines Hardware-Wallets, das auch BTC- oder ETH-Staking-Positionen hält.
Was zu tun ist, wenn du bereits etwas Verdächtiges signiert hast
Wenn du ein setApprovalForAll oder ein permit signiert hast, hast du noch nichts verloren, aber der Angreifer hat jetzt die Schlüssel, um es sich zu nehmen. Zeit ist entscheidend. Der schnellste Weg ist, Revoke.cash zu öffnen, die betroffene Wallet zu verbinden und jede Genehmigung für die Contract-Adresse zu widerrufen, die gerade signiert wurde. Wenn du die Contract-Adresse nicht kennst, widerrufe alles, was du nicht wiedererkennst.
Wenn du versehentlich eine Seaport- oder Blur-Order signiert hast, hat der Angreifer möglicherweise bereits eine offene Order, um dein NFT für null oder ein wei zu kaufen. Gehe zum Marktplatz, suche deine Listings und storniere sie. Bei Blur findest du das unter „My bids“ und „My listings“. Bei OpenSea findest du es unter „Listings“. Das Stornieren eines Off-Chain-Listings erfordert eine zweite Signatur, was der Eintrittspreis für die Nutzung von Marktplätzen ist, aber es ist deutlich günstiger, als die Order ausführen zu lassen.
Wenn deine NFTs bereits weg sind, verhandle nicht mit dem Betrüger, bezahle keinen „Recovery Service“, der dir auf Twitter eine DM schickt, und signiere keine weiteren Transaktionen aus dieser Wallet. Verschiebe alle verbleibenden Vermögenswerte in eine neue Wallet, reiche eine Meldung bei den Community-Moderatoren des Projekts ein und ziehe in Betracht, den Contract an Etherscan oder über den Flag-Mechanismus des relevanten Block Explorers zu melden, damit der nächste Sammler eine Warnung erhält.
Wie du NFT-Mint-News verfolgen kannst, ohne Opfer eines Drainers zu werden
NFT-Mint-Ankündigungen bewegen sich schnell, und der Abstand zwischen einem echten Drop und einem gefälschten Klon wird in Minuten gemessen. Jeden offiziellen Kanal manuell zu verfolgen, ist ein aussichtsloses Spiel, und genau darauf zählen Drainer-Betreiber. Zippfeed zeigt NFT-Mint-Schlagzeilen mit Sentiment-Bewertung als bullish, neutral oder bearish und einer Wichtigkeitseinstufung an, damit du echte Drops erkennst, Nachahmer ignorierst und nur zu Mint-Seiten weiterklickst, die du bereits verifiziert hast. Kombiniere diesen Feed mit der oben beschriebenen Burner-Wallet-Gewohnheit, und du machst den gefährlichsten Moment beim Sammeln zur Routine.