Svindlere retter sig mod kryptobrugere med et nyt "nul værdi TransferFrom"-trick

Data fra Etherscan viser, at nogle kryptosvindlere retter sig mod brugere med et nyt trick, der giver dem mulighed for at bekræfte en transaktion fra ofrets tegnebog, men uden at have ofrets private nøgle. Angrebet kan kun udføres for transaktioner med 0 værdi. Det kan dog forårsage, at nogle brugere ved et uheld sender tokens til angriberen som følge af klipning og indsættelse fra en kapret transaktionshistorik.

Blockchain-sikkerhedsfirmaet SlowMist opdaget den nye teknik i december og afslørede det i et blogindlæg. Siden da har både SafePal og Etherscan vedtaget afbødningsteknikker for at begrænse dets effekt på brugerne, men nogle brugere er muligvis stadig uvidende om dets eksistens.

Ifølge indlægget fra SlowMist fungerer fidusen ved at sende en transaktion på nul tokens fra offerets pung til en adresse, der ligner en, som offeret tidligere havde sendt tokens til.

For eksempel, hvis offeret sendte 100 mønter til en indbetalingsadresse, kan angriberen sende nul mønter fra offerets pung til en adresse, der ligner, men som faktisk er under angriberens kontrol. Offeret kan se denne transaktion i deres transaktionshistorik og konkludere, at den viste adresse er den korrekte indbetalingsadresse. Som et resultat kan de sende deres mønter direkte til angriberen.

Sender en transaktion uden ejerens tilladelse 

Under normale omstændigheder har en angriber brug for offerets private nøgle for at sende en transaktion fra offerets tegnebog. Men Etherscans "kontraktfane"-funktion afslører, at der er et smuthul i nogle token-kontrakter, som kan tillade en angriber at sende en transaktion fra enhver tegnebog.

For eksempel koden til USD Coin (USDC) på Etherscan viser at "TransferFrom"-funktionen tillader enhver person at flytte mønter fra en anden persons tegnebog, så længe mængden af ​​mønter, de sender, er mindre end eller lig med det beløb, som ejeren af ​​adressen har tilladt.

Dette betyder normalt, at en angriber ikke kan foretage en transaktion fra en anden persons adresse, medmindre ejeren godkender en godtgørelse for dem.

Der er dog et smuthul i denne begrænsning. Det tilladte beløb er defineret som et tal (kaldet "uint256-typen"), hvilket betyder, at det fortolkes som nul, medmindre det specifikt er sat til et andet tal. Dette kan ses i funktionen "godtgørelse".

Som et resultat, så længe værdien af ​​angriberens transaktion er mindre end eller lig med nul, kan de sende en transaktion fra absolut enhver tegnebog, de ønsker, uden at have brug for den private nøgle eller forudgående godkendelse fra ejeren.

USDC er ikke det eneste token, der tillader dette at blive gjort. Lignende kode kan findes i de fleste token-kontrakter. Det kan endda være fundet i eksemplet kontrakter linket fra Ethereum Foundations officielle hjemmeside.

Eksempler på fidus med nulværdioverførsel

Etherscan viser, at nogle tegnebogsadresser sender tusindvis af transaktioner uden værdi om dagen fra forskellige ofres tegnebøger uden deres samtykke.

For eksempel brugte en konto mærket Fake_Phishing7974 en ubekræftet smart kontrakt til udføre mere end 80 bundter af transaktioner den 12. januar med hver bundt Indeholder 50 transaktioner med nulværdi for i alt 4,000 uautoriserede transaktioner på én dag.

Vildledende adresser

Ved at se nærmere på hver transaktion afsløres et motiv for denne spam: Angriberen sender transaktioner med nulværdi til adresser, der ligner meget dem, ofrene tidligere har sendt penge til.

For eksempel viser Etherscan, at en af ​​brugeradresserne, som angriberen er målrettet mod, er følgende:

0x20d7f90d9c40901488a935870e1e80127de11d74.

Den 29. januar godkendte denne konto 5,000 Tether (USDT) til at blive sendt til denne modtageadresse:

0xa541efe60f274f813a834afd31e896348810bb09.

Umiddelbart derefter sendte Fake_Phishing7974 en transaktion med nulværdi fra offerets pung til denne adresse:

0xA545c8659B0CD5B426A027509E55220FDa10bB09.

De første fem tegn og de sidste seks tegn i disse to modtageradresser er nøjagtig ens, men tegnene i midten er alle helt forskellige. Angriberen kan have til hensigt, at brugeren skulle sende USDT til denne anden (falske) adresse i stedet for den rigtige, og give deres mønter til angriberen.

I dette særlige tilfælde ser det ud til, at fidusen ikke virkede, da Etherscan ikke viser nogen transaktioner fra denne adresse til en af ​​de falske adresser, som svindleren har oprettet. Men i betragtning af mængden af ​​transaktioner med nulværdi udført af denne konto, kan planen have fungeret i andre tilfælde.

Tegnebøger og blokudforskere kan variere betydeligt med hensyn til, hvordan eller om de viser vildledende transaktioner.

Punge

Nogle tegnebøger viser muligvis slet ikke spamtransaktionerne. For eksempel viser MetaMask ingen transaktionshistorik, hvis den geninstalleres, selvom kontoen selv har hundredvis af transaktioner på blockchain. Dette indebærer, at det gemmer sin egen transaktionshistorik i stedet for at trække dataene fra blockchain. Dette skulle forhindre spam-transaktionerne i at dukke op i tegnebogens transaktionshistorik.

På den anden side, hvis tegnebogen trækker data direkte fra blockchainen, kan spamtransaktionerne dukke op i tegnebogens display. I en 13. december meddelelse på Twitter, SafePal CEO Veronica Wong advarede SafePal-brugere, at deres tegnebog kan vise transaktionerne. For at afbøde denne risiko sagde hun, at SafePal ændrede den måde, adresser vises på i nyere versioner af sin tegnebog for at gøre det nemmere for brugere at inspicere adresser.

I december rapporterede en bruger også, at deres Trezor-pung var visning vildledende transaktioner.

Cointelegraph kontaktede via e-mail til Trezor-udvikler SatoshiLabs for en kommentar. Som svar udtalte en repræsentant, at tegnebogen trækker sin transaktionshistorik direkte fra blockchain "hver gang brugere tilslutter deres Trezor-pung."

Teamet tager dog skridt til at beskytte brugerne mod fidusen. I en kommende Trezor Suite-opdatering vil softwaren "markere de mistænkelige transaktioner med nulværdi, så brugerne bliver advaret om, at sådanne transaktioner potentielt er svigagtige." Virksomheden udtalte også, at tegnebogen altid viser den fulde adresse for hver transaktion, og at de "anbefaler kraftigt, at brugere altid tjekker den fulde adresse, ikke kun de første og sidste tegn."

Blok opdagelsesrejsende

Bortset fra tegnebøger er blokopdagere en anden type software, der kan bruges til at se transaktionshistorik. Nogle opdagelsesrejsende kan vise disse transaktioner på en sådan måde, at de utilsigtet vildleder brugere, ligesom nogle tegnebøger gør.

For at afbøde denne trussel er Etherscan begyndt at nedtone tokentransaktioner med nulværdi, som ikke er initieret af brugeren. Det markerer også disse transaktioner med en advarsel, der siger, "Dette er en token-overførsel med nulværdi, der er initieret af en anden adresse," som det fremgår af billedet nedenfor.

Andre blokudforskere kan have taget de samme trin som Etherscan for at advare brugere om disse transaktioner, men nogle har muligvis ikke implementeret disse trin endnu.

Tips til at undgå "nulværdi TransferFrom"-tricket

Cointelegraph kontaktede SlowMist for at få råd om, hvordan man undgår at blive offer for "nulværdi TransferFrom"-tricket.

En repræsentant fra virksomheden gav Cointelegraph en liste med tips til at undgå at blive offer for angrebet:

  1. "Udvis forsigtighed og bekræft adressen, før du udfører nogen transaktioner."
  2. "Brug hvidlistefunktionen i din tegnebog for at forhindre at sende penge til de forkerte adresser."
  3. "Forbliv på vagt og informeret. Hvis du støder på mistænkelige overførsler, så tag dig tid til at undersøge sagen roligt for at undgå at blive offer for svindlere."
  4. "Oprethold et sundt niveau af skepsis, vær altid forsigtig og årvågen."

At dømme ud fra dette råd er det vigtigste for kryptobrugere at huske altid at tjekke adressen, før de sender krypto til den. Selvom transaktionsregistreringen ser ud til at antyde, at du har sendt krypto til adressen før, kan denne fremtoning bedrage.