Im dunklen Wald von Crypto eskalieren die Methoden böswilliger Entwickler ständig.

Autor |. Nan Zhi

Token Pixiu bezieht sich normalerweise auf eine Situation, in der ein bestimmter Token nur gekauft, aber nicht verkauft werden kann, um nach einer gewissen Zeit einen Gewinn zu erzielen und den Käufer abzuwerben. Der verzögerte Pixiu kann innerhalb kurzer Zeit gehandelt werden, wenn der Token zum ersten Mal für den Handel geöffnet wird, und wird dann zum Pixiu-Status. Für diese Art von Rug-Pull-Technik verfügen viele Vertragserkennungstools noch nicht über entsprechende Erkennungsfunktionen, und sie wird zu einer der wichtigsten Gewinnmethoden für böswillige Entwickler.

Im Folgenden erklärt Odaily Planet Daily anhand eines kurzen Überblicks über die Prinzipien von ERC 20 und Uniswap, wie Delay Pixiu implementiert wird.

Hinweis: Einige der Analogien im Artikel sind aus Gründen des besseren Verständnisses nicht ganz genau.

ERC 20-Grundlagen

Die meisten Token auf dem Markt entsprechen dem ERC-20-Standard. Wie lautet die Antwort von ERC-20?

ERC-20 ist ein Token-Standard auf der Ethereum-Blockchain, der eine Reihe von Regeln und Schnittstellen definiert, denen Token-Verträge folgen müssen. Dieser Standard standardisiert die Grundfunktionen von Token, einschließlich Überweisungen, Kontostandsabfragen, Autorisierung, Token im Namen anderer auszugeben usw.

Hier sind einige der wichtigsten Regeln und Funktionen des ERC-20-Token-Standards:

  • Übertragung: ERC-20-Token können über Smart Contracts übertragen werden, sodass Benutzer Token an andere Ethereum-Adressen senden können.

  • BalanceOf: Benutzer können ihr ERC-20-Token-Guthaben abfragen, um zu sehen, wie viele Token sie besitzen.

Saldenabfrage (BalanceOf):

Tatsächlich verfügt diese Funktion nicht nur über eine „Abfrage“-Funktion, sie definiert auch, wie viele Token der Benutzer „besitzt“. Jeder Token kann als „Bank“ verstanden werden, und jede Wallet-Adresse erhält nach dem Handel mit Token eine „Einzahlungskarte“, die den Saldo (Saldo) jeder Adresse aufzeichnet. Das heißt, Sie können ihn bei der Bank beantragen um Ihren Kontostand zu überprüfen, oder Sie können für Transaktionen einen Antrag auf Vermögensänderung bei der Bank stellen.

Hinweis: Ethereum übernimmt das kontobasierte Modell.

Daher „besitzen“ Benutzer nicht im Wesentlichen ihr Vermögen, sondern die Anzahl der Token, die Sie „ausgeben“ können, wird durch eine Funktion „definiert“.

  • Das heißt: X-Tokens-Saldo von [A-Konto]=Die Anzahl der X-Tokens, die Konto A extern ausgeben kann

Hinweis: In der realen Welt handelt es sich bei Bankeinlagen um Schulden der Bank gegenüber ihren Kunden, und die Bank besitzt Vermögenswerte.

Überweisen

Alle ERC-20-Token müssen die Übertragungsfunktion abschließen. Basierend auf dem vorherigen Ledger-Modell „liefert“ Konto A bei einer Übertragung nicht einen Token an Konto B, sondern wird von Konto A abgezogen. Die Anzahl der Token beträgt X, und die Anzahl der Token X wird dem Konto B hinzugefügt.

  • Das heißt: Saldo von [A-Konto]-X und Saldo von [B-Konto]+X gleichzeitig

Entwickler können die Übertragungsfunktion ändern, um die Anzahl der Übertragungen, Übertragungsempfänger usw. zu begrenzen.

Die Übertragungsfunktion ist die grundlegende Quelle der meisten Pixiu-Mechanismen.

Uniswap

Im vorherigen Abschnitt wurde jeder Token mit einer „Bank“ verglichen. Dann kann Uniswap als Akzeptanzvermittler verstanden werden, der zwei Token über das AMM-Prinzip xy=k austauscht.

Der Umtauschvorgang läuft wie folgt ab:

  • Der Benutzer überträgt Token A in den Uniswap-Vertrag

  • Uniswap verwendet y=k/x, um die Token zu berechnen, die von den empfangenen Token zurückgegeben werden sollen, und zieht die Bearbeitungsgebühr ab.

  • Uniswap überträgt Token A in den LP-Pool und entnimmt Token B

  • Uniswap überträgt Token B an den Benutzer

Natürlich umfasst Uniswap tatsächlich mehrere Funktionen und Prozesse. Der wichtigste Punkt, den es zu verstehen gilt, ist, dass Uniswap Transaktionen nur auf der Grundlage von „empfangenen Token“ durchführt und sich die Menge möglicherweise geändert hat, wenn der Benutzer den „Transfer“-Vorgang durchführt.

Pixiu-Mechanismus

In diesem Abschnitt wird der Pixiu-Mechanismus in zwei Kategorien unterteilt:

① Hohe Transaktionssteuer, was dazu führt, dass Benutzer keine Rückerstattungen aus Verkaufstokens erhalten;

② Übertragung nicht möglich, was dazu führt, dass Benutzer nicht mit Uniswap handeln können.

hohe Transaktionssteuer

Dieser Abschnitt zeigt einen Meme-Coin-Berechnungsprozess mit Transaktionssteuer, wie unten gezeigt (konzentrieren Sie sich nur auf den roten Teil).

  1. Transaktionssteuer(n) berechnen

  2. Ziehen Sie den gesamten Geldbetrag von der Brieftasche des Benutzers ab (BalancerOf[Benutzer] reduziert Token A)

  3. Überweisen Sie Geld an die Entwickler-Wallet oder LP und andere Adressen (BalancerOf[Dev] erhöht Token A × Steuer S)

  4. Übertragen Sie einige Token an Uniswap, um sie gegen Token B (Token A×(1-S)) einzutauschen.

  5. Der Benutzer erhält nicht genügend Token B

Wie im vorherigen Abschnitt erwähnt, verarbeitet Uniswap nur „empfangene Token“, und Entwickler können den an Uniswap und Benutzer übertragenen Betrag nach Belieben ändern.

Wenn hier der Transaktionssteuersatz auf 100 % geändert wird, wird der dritte Schritt „③Übertragung auf die Entwickler-Wallet oder LP und andere Adressen“ implementiert und der Benutzer erhält keine Token mehr.

Übertragung nicht möglich

In Solidity können Entwickler Transaktionen durch require einschränken:

Wenn der Entwickler den Austausch von Token auf bestimmte Whitelist-Adressen beschränkt, kann der Benutzer die Token in seiner Hand nicht an Uniswap senden. Im zweiten Schritt „Geld vom Wallet des Benutzers abheben“ wird Pixiu implementiert und das Der Router des Entwicklers Uniswap kann so eingerichtet werden, dass er Token sendet, und das Ergebnis ist:

Benutzer können nur kaufen (Uniswap überträgt Token an Benutzer), aber nicht verkaufen (da Token nicht an Uniswap übertragen werden können, um sie gegen ETH usw. einzutauschen).

Oder Entwickler können das Übertragungslimit auf 0 setzen, den Transaktionsschalter ausschalten und andere Vorgänge über verschiedene Pfade ausführen, aber am Ende steuern sie alle das Verhalten der „Übertragung“.

Verspäteter Pixiu

Eine weitere Verzögerung wird dadurch erreicht, dass die Zeit (Blockhöhe) begrenzt werden muss.

Bei einem bestimmten Token gelten beispielsweise folgende Einschränkungen:

    erfordern (Blocknummer < _Zulassung)

Mit zunehmender Blockhöhe können Benutzer nicht mehr übertragen, wenn sie einen bestimmten Schwellenwert erreichen, wie Pixiu erkennt.

Darüber hinaus gibt es auch Pixiu, die realisiert werden, wenn die Anzahl der Transaktionen einen bestimmten Schwellenwert erreicht. Diese Art von verzögertem Pixiu kann in der Ausgangssituation normal gehandelt werden, wenn bei der Überprüfung bestimmter Vertragssicherheitserkennungstools keine gezielten Einstellungen vorgenommen werden, was Benutzer dazu veranlasst in eine Falle tappen.

Wie man etwas vorbeugt

Angesichts der Tatsache, dass diese Art der Erntemethode häufig bei „Spülhunden“ verwendet wird, streben Käufer oft nach Effizienz und ignorieren die Sicherheit, und wir haben noch kein ausgereiftes Sicherheitsunternehmen gesehen, das ein spezielles Erkennungstool für diese Methode auf den Markt gebracht hat, so Odaily Planet Daily möchte Sie daran erinnern, dass Käufer mit bestimmten Programmierkenntnissen im Interesse ihres eigenen Vermögens auch den Vertragscode durchgehen (oder Tools wie ChatGPT verwenden, um einen kurzen Blick darauf zu werfen), dem Selpair-Vertrag besondere Aufmerksamkeit schenken und bleiben weg von Projekten, die ungewöhnliche Codebereiche enthalten.