Ισπανός προγραμματιστής ήθελε να εξελίξει τον έλεγχο της ρομποτικής του σκούπας και βρέθηκε να ‘χει πρόσβαση σε 7.000, της ίδιας εταιρείας. Τι πήγε λάθος
Στις εξαιρετικές ανακαλύψεις της ανθρωπότητας ανήκουν όλες οι συσκευές που κάνουν τη ζωή μας εύκολη. Για παράδειγμα, η σκούπα ρομπότ, η οποία προστέθηκε στη λίστα με όσα μπορούν να πάνε λάθος, με την τεχνολογία.
Αγοράζεις μια ρομποτική σκούπα, κατεβάζεις την εφαρμογή της εταιρείας που την έφτιαξε στο κινητό σου και κάνεις τη σύνδεση, μέσω του Wi-Fi.
Βάζεις τους κωδικούς, κάνεις login και συνδέεσαι, ώστε να μπορείς να ελέγχεις την σκούπα από το κινητό σου -να καθαρίζει το σπίτι, ενώ εσύ πίνεις καφέ ή είσαι κολλημένος/η/ο στο μποτιλιάρισμα.
Δεν ξέρω αν ξέρεις, αλλά με την επιστροφή στη βάση, η σκούπα “δίνει” δεδομένα όπως το τι καθάρισε, το ποσοστό της μπαταρίας κλπ.
Πάμε τώρα, και στο θέμα μας.
Ο μηχανικός λογισμικού Sammy Azdoufal ήθελε να εξελίξει την ιδέα και να ελέγχει την σκούπα του με το χειριστήριο του PS5.
Τελικά, βρέθηκε να έχει εικόνα, ήχο και κάτοψη (χαρτογράφηση) από 7.000 σπίτια από 24 χώρες σε ΗΠΑ, Κίνα και Ευρωπαϊκή Ένωση, που είχαν ρομποτική σκούπα της ίδιας εταιρείας, δίχως να κάνει hacking ή κλοπή κωδικών.
Σκέψου να έχεις το κλειδί του σπιτιού σου (token) και η πολυκατοικία να επιτρέπει την πρόσβαση σε όλα τα διαμερίσματα, σε όποιον έχει οποιοδήποτε κλειδί.
Εν τω μεταξύ, με τη διεύθυνση IP κάθε μηχανής, ο Ισπανός μπορούσε να υπολογίσει, κατά προσέγγιση, την τοποθεσία του νοικοκυριού κάθε ρομποτικής ηλεκτρικής σκούπας.
Πώς ο Azdoufal “μπήκε” σε 7.000 σπίτια μέσω ρομποτικής σκούπας
Ο Azdoufal έδωσε 2.000 δολάρια, για να αγοράσει την premium ηλεκτρική σκούπα της εταιρείας DJI Romo. Δεν μπήκε στη λογική να τη συγχρονίσει με την εφαρμογή της εταιρείας στο κινητό του.
Τουναντίον, την έλεγξε με χειριστήριο PSP5, σαν να είναι παιχνίδι.
Μετά, ζήτησε από το Claude (AI chatbot της Αnthropic) να του πει πώς δουλεύει το MQTT της εταιρείας.
Σε απλά ελληνικά, το MQTT είναι πρωτόκολλο επικοινωνίας “έξυπνων” συσκευών. Ένας τρόπος να μιλούν μεταξύ τους διαφορετικά προγράμματα ή εφαρμογές -σαν να έχουν κοινή γλώσσα και κανόνες. Πρόκειται για τη “γέφυρα” που επιτρέπει σε εξωτερικούς προγραμματιστές να ελέγχουν ή να παίρνουν πληροφορίες από μια συσκευή ή υπηρεσία, δίχως να χρειάζεται να γνωρίζουν πώς δουλεύει από μέσα η συσκευή ή η υπηρεσία.
Ο Azdoufal έφτιαξε δικό του πρόγραμμα (app) για να στέλνει εντολές και να παίρνει δεδομένα από την σκούπα του, η οποία είχε συνδεθεί με τους servers της DJI, μέσω του κλειδιού ασφαλείας (authentication token) που έχει κάθε επίσημο (αυθεντικό) προϊόν.
Οι servers της εταιρείας δεν έλεγξαν σε ποια σκούπα ανήκει το κλειδί ασφαλείας. Μόνο ότι ήταν έγκυρο. Ή τουλάχιστον αυτό συνέβαινε, έως εκείνη την ημέρα.
Έτσι, το app του Azdoufal δεν συνδέθηκε μόνο με τη δική του ρομποτική σκούπα, αλλά με άλλες 7.000 της εταιρείας, σε 24 χώρες, σε τρεις ηπείρους.
Δηλαδή, ο προγραμματιστής απέκτησε πρόσβαση στην κάμερα και το μικρόφωνο, την κάτοψη των σπιτιών και πέραν του ότι έβλεπε και άκουγε τα πάντα, μπορούσε να ενεργοποιεί όποια συσκευή ήθελε, όπου ήθελε.
Κάθε τρία δευτερόλεπτα, η εφαρμογή του Azdoufal συνέλεγε τους σειριακούς αριθμούς χιλιάδων ρομπότ που επέστρεφαν στη βάση τους και ανέφεραν πληροφορίες σχετικά με τις διαδρομές καθαρισμού τους, τις καταστάσεις φόρτισής τους, τα εμπόδια που είχαν συναντήσει κ.α..
Αποκαλύφθηκε ένα τεράστιο ελάττωμα ασφαλείας
Την αποκάλυψη αυτήν την έκανε ο Azdoufal στο The Verge, για να ενημερώσει και να σώσει καταστάσεις.
Πρότεινε και να αποδείξει τον ισχυρισμό του. Έτσι, πήρε το serial number μιας ρομποτικής σκούπας και σε λίγα λεπτά, μέσω της εφαρμογής του, έβλεπε όλο το σπίτι, ενώ την έβαλε να σκουπίσει και το σαλόνι. Και όλα αυτά, χωρίς κλοπές κωδικών ή hacking.
Δίχως να το επιχειρήσει καν, εκμεταλλεύτηκε ένα τεράστιο ελάττωμα ασφαλείας.
Το ηθικό δίδαγμα της ιστορίας είναι πως εξακολουθούν και υπάρχουν εταιρείες, οι οποίες δεν έχουν καλή ασφάλεια στο cloud τους και δη σε “έξυπνες” συσκευές.
Η DJI εξέδωσε μια ενημέρωση κώδικα, αφότου επικοινώνησε μαζί της ο Azdoufal.