Ένα εκατομμύριο σε μία συναλλαγή: Πώς η ενημέρωση του Ethereum έγινε όπλο για τους απατεώνες

Ένα εκατομμύριο σε μία συναλλαγή: Πώς η ενημέρωση του Ethereum έγινε όπλο για τους απατεώνες
Όταν ένα πορτοφόλι γίνεται έξυπνο συμβόλαιο: Μια νέα εποχή κινδύνων στο blockchain του Ethereum

Στις 22 Αυγούστου καταγράφηκε κλοπή σχεδόν 1 εκατομμυρίου δολαρίων σε μάρκες και NFTs. Ο χρήστης υπέγραψε μια συναλλαγή που έμοιαζε με μια συνηθισμένη ανταλλαγή στο Uniswap. Δεν υπήρχαν εμφανή σημάδια κινδύνου: η διεπαφή εμφάνιζε μια τυπική, αναμενόμενη λειτουργία. Όμως, αντί για ανταλλαγή, πραγματοποιήθηκε μια κρυφή ενέργεια. Το πορτοφόλι έλαβε προσωρινά "αναβαθμισμένα" δικαιώματα σύμφωνα με το πρότυπο EIP-7702, και αυτό ήταν αρκετό για να μεταφερθούν όλα τα περιουσιακά στοιχεία με μία κίνηση στους λογαριασμούς των απατεώνων.

Αυτό το άρθρο μεταφράστηκε από το πρωτότυπο. Διαβάστε την αρχική έκδοση από τον ανταποκριτή μας εδώ.

Αυτή η περίπτωση έγινε το πρώτο ηχηρό μήνυμα ότι τα νέα πρότυπα του Ethereum, που αναπτύχθηκαν για λόγους ευκολίας και αποτελεσματικότητας, μπορούν να μετατραπούν σε εργαλεία για phishing.

Τι είναι το EIP-7702

Το EIP-7702 είναι μια πρόταση βελτίωσης του Ethereum που άλλαξε την ίδια τη φύση της αλληλεπίδρασης με το δίκτυο. Παραδοσιακά, το Ethereum είχε δύο τύπους λογαριασμών. Ο πρώτος ήταν ο λογαριασμός εξωτερικής ιδιοκτησίας (EOA), ένα κανονικό πορτοφόλι που απλώς υπογράφει συναλλαγές με ένα ιδιωτικό κλειδί. Ο δεύτερος ήταν ο λογαριασμός συμβολαίου, ο οποίος περιέχει κώδικα και μπορεί να εκτελεί σύνθετα σενάρια.

Η εισαγωγή του EIP-7702 επέτρεψε τη συγχώνευση αυτών των δύο μοντέλων. Ένα κανονικό πορτοφόλι απέκτησε τη δυνατότητα να συμπεριφέρεται προσωρινά ως έξυπνο συμβόλαιο, πράγμα που σημαίνει ότι στο πλαίσιο μιας μόνο συναλλαγής μπορεί να εκτελεί πολλές ενέργειες ταυτόχρονα. Για τον χρήστη, αυτό μοιάζει με μια απλοποιημένη εκδοχή της λεγόμενης αφαίρεσης λογαριασμού: δεν χρειάζεται να υπογράφει κάθε ενέργεια ξεχωριστά και να πληρώνει για δεκάδες συναλλαγές. Μια μόνο επιβεβαίωση μπορεί να ολοκληρώσει ένα ολόκληρο σενάριο.

Πώς λειτουργεί τεχνικά

Στο κλασικό μοντέλο EOA, οι ενέργειες περιορίζονταν σε απλές μεταφορές ή κλήση λειτουργιών σε ένα έξυπνο συμβόλαιο. Στην περίπτωση του EIP-7702, το πορτοφόλι φορτώνει προσωρινό κώδικα που εκτελείται μόνο για τη διάρκεια μιας συναλλαγής. Αυτός ο κώδικας μπορεί να περιέχει μια ακολουθία διαφορετικών εντολών: για παράδειγμα, πρώτα να εκτελέσει μια ανταλλαγή σε ένα αποκεντρωμένο ανταλλακτήριο, στη συνέχεια να στείλει μέρος των tokens σε μια άλλη διεύθυνση και ταυτόχρονα να αλληλεπιδράσει με ένα πρωτόκολλο ρευστότητας.

Μόλις ολοκληρωθεί η συναλλαγή, ο προσωρινός κωδικός εξαφανίζεται και ο λογαριασμός επιστρέφει στην κανονική του κατάσταση. Αυτή η προσέγγιση επιλύει πραγματικά πολλά ζητήματα, καθιστώντας τις λειτουργίες DeFi ευκολότερες και φθηνότερες. Αλλά αυτή ακριβώς η ευελιξία έχει γίνει η βάση για νέες επιθέσεις.

Γιατί τα πορτοφόλια δεν προειδοποιούν για τον κίνδυνο

Ο κύριος λόγος είναι ότι οι συναλλαγές στο πλαίσιο της EIP-7702 τεχνικά μοιάζουν με μια κανονική ενημέρωση κώδικα. Η διεπαφή του πορτοφολιού λαμβάνει μόνο γενικές πληροφορίες: ο χρήστης υπογράφει μια συναλλαγή που περιέχει initCode και αυτός ο κώδικας θα εκτελεστεί εντός του μπλοκ. Από μόνα τους, αυτά τα δεδομένα δεν φέρουν ένα προφανές σήμα κινδύνου. Το πορτοφόλι δεν μπορεί να αναγνωρίσει ότι ο κώδικας κρύβει μια εντολή για "μεταφορά όλων των μαρκών".

Μια άλλη επιπλοκή είναι ότι το πρότυπο είναι ακόμη νέο και οι περισσότεροι πελάτες και πορτοφόλια δεν κατανοούν ακόμη τη λογική του EIP-7702. Στην περίπτωση των κλασικών συναλλαγών, ένα πορτοφόλι μπορεί να δείξει ξεκάθαρα "στέλνετε 2 ETH στη διεύθυνση X". Με το 7702, ωστόσο, βλέπει μόνο ένα γενικό σύνολο εντολών που θα εκτελεστούν σε πραγματικό χρόνο στην εικονική μηχανή. Η εξήγηση αυτού στον χρήστη θα απαιτούσε μια πολύπλοκη ενσωμάτωση και, ουσιαστικά, έναν ενσωματωμένο αναλυτή κώδικα - κάτι που δεν υπάρχει ακόμη στα mainstream πορτοφόλια.

Ως αποτέλεσμα, ο χρήστης βλέπει μόνο μια "συνήθη ανταλλαγή" ή μια "έγκριση", ενώ η πραγματική λογική της συναλλαγής παραμένει κρυφή. Αυτό το χάσμα μεταξύ της τεχνικής πολυπλοκότητας και της οπτικής αναπαράστασης δημιουργεί ένα ιδανικό πεδίο για κατάχρηση.

Ο δρόμος προς την EIP-7702

Η EIP-7702 δεν εμφανίστηκε από το πουθενά. Το Ethereum κινείται εδώ και καιρό προς την αφαίρεση λογαριασμών, όπου η γραμμή μεταξύ ενός πορτοφολιού και ενός έξυπνου συμβολαίου εξαφανίζεται. Τα προηγούμενα βήματα, ιδίως το EIP-4337, μετέφεραν την επεξεργασία των συναλλαγών σε ειδικές "δέσμες".

Η νέα πρόταση έγινε μια απλούστερη αλλά πιο ριζοσπαστική παραλλαγή, όπου η λογική εκτελείται απευθείας στο λογαριασμό του χρήστη χωρίς πρόσθετα επίπεδα. Αυτό έκανε τις συναλλαγές πιο αποτελεσματικές, αλλά άνοιξε και νέες ευκαιρίες για επιθέσεις.

Εξισορρόπηση καινοτομίας και κινδύνου

Η κλοπή του 1 εκατομμυρίου δολαρίων καταδεικνύει το παράδοξο της ανάπτυξης του Ethereum. Κάθε νέα βελτίωση ανοίγει την πόρτα στην ευκολία και την ευελιξία, αλλά ταυτόχρονα δημιουργεί ένα νέο επίπεδο κινδύνου. Οι προγραμματιστές οραματίστηκαν συναλλαγές πολλαπλών λειτουργιών και φθηνότερα σενάρια DeFi, αλλά στην πράξη η πρώτη ευρέως διαδεδομένη περίπτωση χρήσης αποδείχθηκε ότι ήταν εξελιγμένο phishing.

Το EIP-7702 άνοιξε μια νέα εποχή για το Ethereum, όπου ένα κανονικό πορτοφόλι μπορεί να γίνει ένα έξυπνο συμβόλαιο για λίγα δευτερόλεπτα. Είναι ένα βήμα προς ένα καθολικό μοντέλο λογαριασμού, αλλά και μια υπενθύμιση ότι η καινοτομία συνοδεύεται πάντα από κινδύνους. Εκεί που οι προγραμματιστές βλέπουν την αποτελεσματικότητα, οι απατεώνες βλέπουν έναν τρόπο να αποστραγγίσουν εκατομμύρια με μία μόνο υπογραφή.

Αυτό το υλικό μπορεί να περιέχει απόψεις τρίτων, κανένα από τα δεδομένα και τις πληροφορίες σε αυτήν την ιστοσελίδα δεν αποτελεί επενδυτική συμβουλή σύμφωνα με την Αποποίηση Ευθυνών μας. Ενώ τηρούμε αυστηρή Συντακτική Ακεραιότητα, αυτή η ανάρτηση μπορεί να περιέχει αναφορές σε προϊόντα από τους συνεργάτες μας.