Σκληρό πιρούνι στην αλυσίδα BNB: η ασφάλεια αυξάνεται

Λίγες μέρες πριν, μια γέφυρα που βασίζεται στο BNB Chain υπέστη επίθεση με χάκερ που επέτρεψε στους εισβολείς να κλέψουν 100 εκατομμύρια δολάρια σε κρυπτογράφηση

Παρά το γεγονός ότι το hack δεν έγινε απευθείας στο BNB Chain, αλλά σε ένα έξυπνο συμβόλαιο που εκτελείται σε αυτό το blockchain, η ομάδα του BNB Chain αποφάσισε ακόμα να αυξήσει τα επίπεδα ασφάλειας. 

Ως εκ τούτου, δημιούργησαν μια επείγουσα ενημέρωση κώδικα για να «Μετριάστε την υποδομή cross-chain μεταξύ Beacon Chain και Smart Chain», ώστε να μπορούν να επανενεργοποιήσουν τη διασταυρούμενη αλυσίδα. 

Το BNB Chain εκτελεί σκληρό πιρούνι

Για να εφαρμόσουν αυτό το έμπλαστρο αναγκάστηκαν να απελευθερώσουν μια νέα έκδοση, 1.1.16, που είναι ουσιαστικά ένα σκληρό πιρούνι του προηγούμενου. 

Συχνά, για την ενημέρωση των αποκεντρωμένων πρωτοκόλλων είναι απαραίτητο να εκτελούνται hard forks, τα οποία στην πραγματικότητα είναι ενημερώσεις που δεν είναι συμβατές με το παρελθόν. 

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

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

Αντίθετα, για παράδειγμα, όταν το σκληρό πιρούνι που ξεκίνησε το Ethereum πηγαίνω έλαβε χώρα, ορισμένοι ανθρακωρύχοι αποφάσισαν να μην αναβαθμίσουν και να συνεχίσουν να χρησιμοποιούν την παλιά έκδοση που βασίζεται στο Proof-of-Work. Με αυτόν τον τρόπο, η αλυσίδα διασπάστηκε και γεννήθηκαν δύο κρυπτονομίσματα, ETHW (Ethereum PoW) που δεν είναι τίποτα άλλο από τη συνέχεια του παλιού μη ενημερωμένου πρωτοκόλλου που βασίζεται σε PoW, και του ETH (πραγματικό Ethereum) που είναι η νέα ενημερωμένη έκδοση που βασίζεται σε PoS. 

Το σκληρό πιρούνι του BNB Chain που εισήγαγε το επείγοντα έμπλαστρο ονομαζόταν Moran και εμφανίστηκε στο μπλοκ 22,107,423. 

Οι αλλαγές που έγιναν από αυτήν την ενημέρωση περιλαμβάνουν όχι μόνο τη διόρθωση της ευπάθειας στον έλεγχο κατακερματισμού του iavl, αλλά και την εισαγωγή της κεφαλίδας μπλοκ σε διαδοχικό έλεγχο σε έξυπνα συμβόλαια διασταυρούμενης αλυσίδας και τη λίστα επιτρεπόμενων του υποψηφίου αναμεταδότη γένεσης. 

Τα τρωτά σημεία των γεφυρών διασταυρούμενης αλυσίδας

Οι γέφυρες cross-chain επιτρέπουν στους χρήστες να μεταφέρουν πόρους μεταξύ δύο διαφορετικών blockchains. Συγκεκριμένα, αυτό που δέχτηκε επίθεση πριν από λίγες ημέρες είναι μια γέφυρα που επιτρέπει ανταλλαγές μεταξύ Beacon Chain και Smart Chain της ίδιας αλυσίδας BNB. Στην πραγματικότητα, η BNB Beacon Chain χειρίζεται τη διακυβέρνηση και πονταρίσματος του δικτύου, ενώ η Smart Chain χρησιμοποιείται για έξυπνα συμβόλαια συμβατά με εικονική μηχανή Ethereum. Επιπλέον, και οι δύο αυτές αλυσίδες μπορούν με τη σειρά τους να συνδεθούν με άλλες αλυσίδες μέσω μιας άλλης γέφυρας που ονομάζεται Token Hub.

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

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

Ο εισβολέας είχε καταφέρει να κόψει 2 εκατομμύρια μάρκες BNB από τον αέρα, αξίας περίπου 560 εκατομμυρίων δολαρίων. Αργότερα κατάφερε να μεταφέρει μάρκες συνολικής αξίας περίπου 100 εκατομμυρίων δολαρίων σε άλλα blockchain όπως το Ethereum, το Fantom, το Polygon, το Avalanche και το Arbitrum. Ωστόσο, η πλειονότητα των κουπονιών BNB που δημιουργήθηκαν παρέμειναν στην αλυσίδα BNB και στη συνέχεια παγώθηκαν.

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

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

Το BNB Chain, από την άλλη πλευρά, είναι ένα πρωτόκολλο που δημιουργήθηκε αρχικά από την Binance και με μόνο 44 κόμβους επικύρωσης, όλοι γνωστοί. Το γεγονός ότι κατέστη δυνατό να επικοινωνήσουμε με όλους και να τους πείσουμε πολύ γρήγορα να σταματήσουν τις επιχειρήσεις το αποκαλύπτει μάλλον ξεκάθαρα δεν είναι ένα πραγματικά αποκεντρωμένο πρωτόκολλο.


Πηγή: https://en.cryptonomist.ch/2022/10/13/hard-fork-on-bnb-chain-to-boost-security/