Vai al contenuto principale

Dati esadecimali + transazione con importo 0: la trappola invisibile della perdita patrimoniale sulla catena

Premi "Conferma" su un'operazione 0 ETH e all'improvviso l'asset scompare. Non esiste alcun avvertimento evidente e nessuna registrazione ordinaria del trasferimento. Il problema potrebbe risiedere in quella firma.

U
Scritto da UKey Wallet

1. Incubo silenzioso

Nell'ultimo anno, abbiamo visto molti utenti perdere istantaneamente le risorse del proprio portafoglio senza alcun preavviso apparente.

Ciò che è ancora più sorprendente è che l'aggressore non ha nemmeno bisogno di avviare prima un normale trasferimento.

Ciò di cui hanno bisogno potrebbe essere semplicemente una firma della transazione con "dati esadecimali".

Potrebbe sembrare un'operazione semplice: richiedere un NFT, partecipare a un airdrop, connettersi a una DApp o al sito accedi.

Sembra innocuo: ​0 ETH, inviato all'indirizzo del contratto intelligente.

Ma la vera minaccia è nascosta nei "dati esadecimali".

Un utente malintenzionato codificherebbe qui chiamate di funzioni dannose, ad esempio:

· approve()

· increaseAllowance()

· transferFrom()

· setApprovalForAll()

· sweepToken()(Funzione di contratto dannoso personalizzata)

Una volta che queste funzioni vengono perse, il controllo delle risorse può essere ceduto agli aggressori.

Una volta completata la firma, l'altra parte può trasferire il tuo ERC-20 gettone o NFT senza confermare nuovamente.


2. I dati esadecimali non dovrebbero essere un punto cieco

Molte transazioni sulla catena possono essere di natura transazioni una tantum anche se non trasferiscono risorse Chiamata di contratto intelligente.

I cosiddetti "dati esadecimali" sono solitamente "metodo + parametri" codificati dall'ABI.

Esempio:

0xa9059cbb00000000000000000000000008e8...000000000000000000000000000000000000000000000000000000005f5e100

· Primi 4 byte 0xa9059cbb: selettore di funzioni, in questo caso transfer(address,uint256)

· Il resto: parametri codificati, come indirizzo gettone, indirizzo di ricezione, valore numerico, ecc.

Per un utente malintenzionato può diventare un punto di accesso per eseguire logiche dannose.

Per un utente che non comprende i dettagli tecnici, sembra semplicemente una stringa di caratteri senza senso.

È qui che sta la trappola: firma cieca.

Agli occhi degli utenti, potrebbe trattarsi solo di una transazione di importo 0; nel contratto progettato dall'attaccante, potrebbe trattarsi di un gruppo di approvazione ad alto rischio.


3. Firme cieche, firme esadecimali e inferno delle firme

Tali transazioni rischiose tendono ad avere alcune caratteristiche comuni:

· 💸 0 ETH o piccole transazioni: Abbassa la guardia.

· 🧬 Dati esadecimali che nascondono chiamate ad alto rischio: Travestito da semplice operazione.

· 🧠 Il destinatario è un contratto intelligente: Non è un indirizzo personale ordinario, potrebbe trattarsi di un contratto dannoso.

· ⚠️ Firma = Esegui: Una singola conferma può attivare approvazione o il trasferimento di risorse.

Ancora più problematico è: ​Questi tipi di attacchi possono essere altamente automatizzati.

Gli aggressori utilizzeranno script per distribuire contratti dannosi su larga scala, avviare il sito Web phishing, generare collegamenti ad alto rischio e promuovere attraverso i seguenti metodi:

· Pubblicità sui motori di ricerca

· Gruppo Discordia

· Twitter/X risposta

· Omaggi falsi e lanci NFT

Quando l'utente fa clic per confermare, una singola firma può mettere le risorse sotto il controllo dell'altra parte.


4. In che modo UKey fornisce protezione

La sicurezza non dovrebbe essere esclusivamente responsabilità dell'utente. UKey è in costruzione Più livelli di difesa, per aiutare a identificare questi rischi nascosti.

Al momento continueremo a rafforzare la protezione dai seguenti aspetti:


(1) Avviso dati esadecimali: il primo promemoria

Quando l'utente seleziona l'opzione "Mostra dati esadecimali" nella transazione Abilitato, UKey visualizzerà immediatamente un chiaro promemoria:

⚠️ Questa transazione contiene dati esadecimali e può comportare l'interazione del contratto intelligente o gettoneapprovazione. Si prega di confermare attentamente.

Questo non è un ripensamento, ma prima di firmare. Protezione attiva.

Chiediamo agli utenti di fare una pausa e confermare prima di firmare: i dati esadecimali sono uno strumento potente di per sé, ma possono anche essere un punto di ingresso a rischio in scenari dannosi.


(2) Analisi dei dati esadecimali + promemoria della funzione ad alto rischio

Per le catene EVM, UKey fornisce Decodifica ABI in tempo reale + analisi dei rischi funzionali:

· Mostra chiaramente il metodo chiamato

· prima di firmare Segnalare comportamenti ad alto rischio, tra cui:

o 🧾 Identificazione dell'indirizzo di destinazione: Si tratta di un contratto di sicurezza noto o di un indirizzo sospetto?

o 🕵️ interazione storica:Hai già interagito con questo indirizzo?

o💰 gettone e importo: Cosa vuoi effettivamente approvazione o inviare?

In questo modo, gli utenti possono vedere il contesto reale prima di firmare, invece di trovarsi di fronte solo a una stringa di dati esadecimali indecifrabili.


(3) Conferma portafoglio hardware

Utilizzare UKey Pro Non devi limitarti a fissare la stringa esadecimale grezza.

Puoi vedere sullo schermo del tuo dispositivo Informazioni reali e leggibili:

· 🔍 nome della funzione — Scopri cosa stai effettivamente firmando.

· 💵 Tipo e importo gettone: Stai detraendo l'intero saldo da approvazione?

· 📍 indirizzo di destinazione: È un indirizzo familiare o un segnale di rischio?

Ogni informazione può aiutarti a creare giudizio più chiaro, Ridurre le etichette errate e gli errori di valutazione.


5. Parole finali

Le transazioni sulla catena generalmente non possono essere "annullate". Ogni firma deve essere attentamente confermata.

Comprendiamo anche che sia facile per gli utenti pensare in questo modo:

"Pensavo di collegare solo il mio portafoglio..."

Pertanto, progettiamo ogni livello di UKey Vera protezione dell'utente Mettilo in una posizione importante.

Ogni firma è un giudizio di fiducia. UKey ti aiuterà a visualizzare più informazioni sui rischi prima di confermare.

Hai ricevuto la risposta alla tua domanda?