Schädlicher Smart Contract und gestohlene Token aus anderen Verträgen?

Ich frage mich, ob die Interaktion mit einem Vertrag meine ETH oder Tokens auf anderen Verträgen beeinflussen könnte.

Ich frage, weil ich viele EOS-Airdrops auf Ethereum sehe, bei denen wir eine 0-ETH-Transaktion, einige mit Daten, an ihre Vertragsadresse senden müssen, um ihre Token zu beanspruchen.

Und weil ich noch nie von einem solchen Betrug gehört habe, habe ich an einem Airdrop teilgenommen, bei dem ich 0 ETH, aber keine Daten an einen Vertrag senden musste. Ich habe ihre Token sofort nach dem Senden erhalten, aber ich kann nicht umhin, mich zu fragen, ob es später mit einem meiner anderen Token durcheinander kommen könnte.

Der Vertrag lautete wie folgt: https://etherscan.io/address/0xb562ec0261a9cb550a5fbcb46030088f1d6a53cf#code

Antworten (1)

Im Allgemeinen nein, eine Adresse kann verwendet werden, um mit verschiedenen Verträgen zu interagieren, und Ihre Adresse, die mit Vertrag A interagiert, sollte diesem Vertrag in Bezug auf Vertrag B keine besonderen Berechtigungen erteilen.

Es gibt jedoch verschiedene Möglichkeiten, jemanden so zu täuschen, dass er denkt, er interagiere mit Vertrag A, wenn er in Wirklichkeit mit Vertrag B interagiert. Dies gilt insbesondere, wenn Sie einen Dapp verwenden, da der Dapp für die Formatierung von Transaktionen verantwortlich ist die es an den Vertrag sendet, und obwohl Tools wie Metamask den Benutzer auffordern, eine Vorschau anzuzeigen, ist es schwierig, die von Ihnen gesendeten Transaktionen zuverlässig zu überprüfen.

Außerdem verwenden einige Verträge signierte Daten, anstatt sich ausschließlich auf den Absender der Transaktion zu verlassen, und diese signierten Daten könnten mit einem anderen Vertrag als dem erwarteten verwendet werden.

Daher ist es im Allgemeinen sicherer, verschiedene Adressen mit unterschiedlichen Verträgen zu verwenden. Je nach gehaltenem Wert kann es auch eine gute Idee sein, die wertvolleren Adressen auf einem anderen Computer oder einer anderen Hardware-Wallet zu speichern.

Um beispielsweise jemanden auszutricksen, selbst wenn er 0 ETH sendet, könnte eine Airdrop-Site die Vertragsadresse eines Tokens auflisten, den ich besitze, und mir sagen: "Hey, sende 0 ETH an diesen Vertrag mit den Daten XXXXX ..." und unwissentlich ich würde eine Funktion für diesen Vertrag mit Argumenten aufrufen, die meine Token dieses Vertrags an die Adresse des Hackers senden würden.
Auch in Ihrem letzten Absatz haben Sie erwähnt, dass es eine gute Idee sein kann, die wertvolleren Adressen auf einem anderen Computer oder einer anderen Hardware-Wallet zu speichern. Aber wenn eine Adresse aus einer Hardware-Wallet mit einem Vertrag interagiert, sind andere Adressen auf derselben Hardware-Wallet nicht betroffen, obwohl die privaten Schlüssel beide aus demselben Seed stammen, richtig?
Richtig, die Verwendung einer anderen Adresse auf derselben Hardware-Wallet würde einige Angriffspunkte schließen, verglichen mit der Verwendung derselben Adresse auf derselben Hardware-Wallet. Die Dinge, über die wir uns Sorgen machen, beinhalten, dass die Seite Sie irgendwie dazu verleitet, eine Sache zu tun, wenn Sie glauben, dass Sie eine andere Sache tun, und mehr Trennung macht das für sie schwieriger.