Prijeđite na glavni sadržaj

Heksadecimalni podaci + transakcija 0 iznosa: nevidljiva zamka gubitka imovine na lancu

Pritisnete "Potvrdi" na trgovini 0 ETH i iznenada imovina nestane. Nema očitog upozorenja i običnog zapisa prijenosa. Problem može biti u tom potpisu.

U
Napisao/la UKey Wallet

1. Tiha noćna mora

Tijekom prošle godine vidjeli smo kako mnogi korisnici trenutno gube svoja sredstva iz novčanika uz malo vidljivog upozorenja.

Ono što je još više iznenađujuće je da napadač čak ne mora prvo niti pokrenuti normalan prijenos.

Ono što im treba može biti samo potpis transakcije s "hex podacima".

To može izgledati kao jednostavna operacija: zatražite NFT, pridružite se airdrop-u, povežite se na DApp ili web mjesto prijavite se.

Čini se bezopasnim: ​0 ETH, poslan na adresu pametnog ugovora.

Ali prava prijetnja krije se u "hex podacima".

Napadač bi ovdje kodirao zlonamjerne pozive funkcija, na primjer:

· approve()

· increaseAllowance()

· transferFrom()

· setApprovalForAll()

· sweepToken()(Prilagođena funkcija zlonamjernog ugovora)

Nakon što se ove funkcije promaše, kontrola nad imovinom može se predati napadačima.

Nakon što je potpisivanje dovršeno, druga strana može prenijeti vaš ERC-20 token ili NFT bez ponovne potvrde.


2. Heksadecimalni podaci ne bi trebali biti slijepa točka

Mnoge na lancu transakcije mogu biti jednokratne čak i ako ne prenose imovinu Poziv pametnog ugovora.

Takozvani "heksadecimalni podaci" obično su "metoda + parametri" kodirani ABI-jem.

Primjer:

0xa9059cbb00000000000000000000000008e8...000000000000000000000000000000000000000000000000000000005f5e100

· Prva 4 bajta 0xa9059cbb: birač funkcija, u ovom slučaju transfer(address,uint256)

· Ostalo: kodirani parametri, kao što su token adresa, adresa primanja, numerička vrijednost itd.

Za napadača može postati ulazna točka za izvršavanje zlonamjerne logike.

Korisniku koji se ne razumije u tehničke detalje, izgleda samo kao besmislen niz znakova.

Ovdje leži zamka: slijepi potpis.

U očima korisnika, to može biti samo transakcija 0-iznosa; u ugovoru koji je osmislio napadač, to može biti skupina visokorizičnih odobrenje.


3. Slijepi potpisi, heksadecimalni potpisi i pakao potpisa

Takve rizične transakcije obično imaju neke zajedničke karakteristike:

· 💸 0 ETH ili male transakcije: Spustite gard.

· 🧬 Heksadecimalni podaci skrivaju visokorizične pozive: Prikriveno kao jednostavna operacija.

· 🧠 Primatelj je pametni ugovor: To nije obična osobna adresa, možda je riječ o zlonamjernom ugovoru.

· ⚠️ Potpis = Izvršiti: Jedna potvrda može pokrenuti odobrenje ili prijenos sredstava.

Još je problematičnije: ​Ove vrste napada mogu biti visoko automatizirane.

Napadači će koristiti skripte za implementaciju zlonamjernih ugovora u velikim razmjerima, pokretanje web stranice phishing, generiranje visokorizičnih veza i promicanje kroz sljedeće metode:

· Oglašavanje na tražilicama

· Discord grupa

· Twitter/X odgovor

· Lažna darivanja i NFT airdropovi

Kada korisnik klikne za potvrdu, jedan potpis može staviti imovinu pod kontrolu druge strane.


4. Kako UKey pruža zaštitu

Sigurnost ne bi trebala biti isključivo odgovornost korisnika. UKey se gradi Višestruki slojevi obrane, kako bi se lakše identificirali ti skriveni rizici.

Trenutno ćemo nastaviti jačati zaštitu sa sljedećih aspekata:


(1) Upozorenje o heksadecimalnim podacima: prvi podsjetnik

Kada korisnik odabere opciju "Prikaži heksadecimalne podatke" u transakciji Omogućeno, UKey će odmah prikazati jasan podsjetnik:

⚠️ Ova transakcija sadrži heksadecimalne podatke i može uključivati interakciju pametnog ugovora ili tokenodobrenje. Pažljivo potvrdite.

Ovo nije naknadna misao, već prije potpisivanja. Aktivna zaštita.

Molimo korisnike da zastanu i potvrde prije potpisivanja: Heksadecimalni podaci sami su po sebi moćan alat, ali također mogu biti ulazna točka rizika u zlonamjernim scenarijima.


(2) Heksadecimalna analiza podataka + podsjetnik na visokorizičnu funkciju

Za EVM lance, UKey pruža ABI dekodiranje u stvarnom vremenu + analiza rizika funkcije:

· Jasno prikazati metodu koja se poziva

· prije potpisivanja Označite visokorizična ponašanja, uključujući:

o 🧾 Identifikacija ciljne adrese: Je li ovo poznati sigurnosni ugovor ili sumnjiva adresa?

o 🕵️ povijesna interakcija:Jeste li već komunicirali s ovom adresom?

o 💰 token i iznos: Što zapravo želite odobrenje ili poslati?

Na ovaj način korisnici mogu vidjeti pravi kontekst prije potpisivanja, umjesto da se samo suoče s nizom heksadecimalnih podataka koji se ne daju dešifrirati.


(3) hardverski novčanik potvrda

Koristite UKey Pro Ne morate samo buljiti u neobrađeni heksadecimalni niz.

Možete vidjeti na zaslonu svog uređaja Prave, čitljive informacije:

· 🔍 naziv funkcije — Znajte što zapravo potpisujete.

· 💵 Vrsta i količina token: Oduzimate li svoj cijeli saldo od odobrenje?

· 📍 odredišna adresa: Je li ovo poznata adresa ili signal opasnosti?

Svaka informacija može vam pomoći da napravite jasnije prosuđivanje, Smanjite krivo označavanje i pogrešne prosudbe.


5. Završne riječi

na lancu transakcije općenito se ne mogu "poništiti". Svaki potpis treba pažljivo potvrditi.

Također razumijemo da je korisnicima lako razmišljati ovako:

"Mislio sam da samo spajam svoj novčanik..."

Stoga dizajniramo svaki sloj UKey Prava zaštita korisnika Stavite ga na važno mjesto.

Svaki potpis je ocjena povjerenja. UKey će vam pomoći da vidite više informacija o riziku prije potvrde.

Jesmo li odgovorili na vaše pitanje?