Η αρχή κάθε νέου έτους αποτελεί πάντα μια καλή ευκαιρία για απολογισμό. Στην κυβερνοασφάλεια, ένα διαχρονικό πρόβλημα -η επιμονή ορισμένων «κλασικών» ευπαθειών ανοικτού κώδικα όπως των Heartbleed και Shellshock– θα πρέπει να μας ωθήσει να θέσουμε ορισμένα δύσκολα ερωτήματα. Γιατί παραμένουν τόσες πολλές ευπάθειες στα εργαλεία ανοικτού κώδικα και πως μπορούμε να επιλύσουμε το πρόβλημα;
Θεωρητικά, τα εργαλεία ανοικτού κώδικα θα έπρεπε να είναι ασφαλέστερα. Σε πρακτικό επίπεδο όμως, τα πράγματα δεν εξελίχθηκαν κατ’ αυτόν τον τρόπο. Το ερώτημα πλέον είναι τι πρέπει να αλλάξει για να αντιμετωπιστεί αυτό το ζήτημα και να ελαχιστοποιηθεί ο αντίκτυπος του στο οικοσύστημα;
Πως επιτρέψαμε να συμβεί κάτι τέτοιο;
Όταν αναπτύχθηκαν για πρώτη φορά τα εργαλεία και οι βιβλιοθήκες ανοικτού κώδικα, πολλοί είχαν την πεποίθηση ότι το λογισμικό που θα προέκυπτε θα ήταν ασφαλέστερο από τα ιδιοταγή προϊόντα (κλειστού λογισμικού) χάρη στη «σοφία του πλήθους». Η θεωρία υποστήριζε ότι με τόσα μάτια πάνω του πως θα μπορούσε να μας ξεφύγει οτιδήποτε εξόφθαλμο;
Όπως αποδείχτηκε ωστόσο, η θεωρία ήταν εσφαλμένη, τουλάχιστον όσον αφορά το λογισμικό ανοικτού κώδικα. Το πλήθος δεν παρακολουθεί. Κανείς από ότι φαίνεται δεν είχε το κίνητρο να αναζητήσει σφάλμα τα σε λογισμικό ανοικτού κώδικα και να τα επιδιορθώσει για το κοινό καλό.
Παρά τα ιδεαλιστικά μας όνειρα για το ευρύ κοινό που θα επαγρυπνεί για σφάλματα στον ανοικτό κώδικα, οι μόνοι τελικά που αποδείχτηκε ότι είχαν πραγματικό κίνητρο να σαρώνουν τις βάσεις κώδικα για ευπάθειες δεν ήταν άλλοι από τους ίδιους τους επιτιθέμενους. Ακόμη όμως και όταν τα εργαλεία ανοικτού κώδικα επιδιορθώνονται και οι βιβλιοθήκες ενημερώνονται, οι προγραμματιστές που επικαιροποιούν τους συνδέσμους τους ώστε να παραπέμπουν στις τελευταίες βιβλιοθήκες είναι ελάχιστοι. Οπότε είναι φυσικό να βλέπουμε ορισμένες απειλές όπως το Heartbleed να εξακολουθούν να υφίστανται.
Το αποτέλεσμα είναι να υπάρχουν σήμερα τόσες ευπάθειες στον ανοικτό κώδικα όσες ήταν και πριν από δέκα χρόνια (ακόμη και μεγάλες) και στο οικοσύστημα να μην έχουν αλλάξει παρά ελάχιστα και μάλιστα παρά τις αξιοσημείωτες αδυναμίες και τις σοβαρές επιθέσεις. Από ότι φαίνεται, όταν κάτι αποτελεί ευθύνη όλων, συχνά καταλήγει να μην είναι ευθύνη κανενός. Το ερώτημα τώρα είναι πως μπορούμε να καταστήσουμε τη διαχείριση ευπαθειών του ανοικτού κώδικα ευθύνη κάποιου;
Μετάθεση ευθυνών
Φυσικά, αυτό το πρόβλημα δεν είναι μοναδικό. Και άλλες δραστηριότητες υποφέρουν από παρόμοια ζητήματα και με το πέρασμα του χρόνου, οι κοινωνίες έχουν αναπτύξει διαφορετικές στρατηγικές για την αντιμετώπιση τους. Να μετατεθεί η ευθύνη στην κυβέρνηση θα μπορούσε να αποτελέσει μία λύση, και μάλιστα κλασική, ωστόσο υπάρχουν και άλλες βιώσιμες επιλογές όπως κερδοσκοπικές οργανώσεις ή οι μη κερδοσκοπικοί οργανισμοί.
Δημόσιος τομέας: Κυβερνήσεις
Όπου υπάρχουν αποτυχίες της αγοράς, η κυβερνητική παρέμβαση αποτελεί βιώσιμη επιλογή. Στην προκειμένη περίπτωση, οι κυβερνήσεις έχουν ισχυρά κίνητρα να αντιμετωπίσουν το πρόβλημα.
Επιχείρημα 1: Διατήρηση των κεφαλαίων στην οικονομία
Πρώτον, παρά τις ειδήσεις για κρατικά υποστηριζόμενες κυβερνοεπιθέσεις, το κυβερνοέγκλημα είναι ένα πρόβλημα κυβερνοασφάλειας που επηρεάζει τους περισσότερους πολίτες. Επηρεάζει τους ψηφοφόρους σε προσωπικό επίπεδο (σκεφτείτε για παράδειγμα τις τηλεφωνικές απάτες, τα μηνύματα ηλεκτρονικού ψαρέματος, τις επιθέσεις παραβιάσεις του εταιρικού ηλεκτρονικού ταχυδρομείου-BEC) και αντλεί χρήματα από την οικονομία που θα μπορούσαν να χρησιμοποιηθούν αλλού. Σύμφωνα με την τελευταία έκθεση IC3 του FBI, από μόνες τους οι επιθέσεις BEC κοστίζουν δισεκατομμύρια δολάρια ετησίως στις εταιρείες. Πρόκειται για τεράστια ποσά εταιρικών κεφαλαίων και χρημάτων των φορολογουμένων.
Η ενίσχυση της κυβερνοανθεκτικότητας του υποκείμενου οικοσυστήματος για τη μείωση των ευπαθειών ανοικτού κώδικα κατά πρώτον λόγο θα διατηρούσε τα χρήματα στις τσέπες των πολιτών και όχι στις τσέπες των επιτιθέμενων. Η επένδυση σε μια πρωτοβουλία μείωσης ευπαθειών ανοικτού κώδικα που θα ήταν αφιερωμένη στην αναζήτηση κενών ασφαλείας και σφαλμάτων θα ήταν αμελητέα σε σύγκριση με όσα δαπανούν τώρα οι περισσότερες κυβερνήσεις για την πρόοδο της τεχνητής νοημοσύνης. Σκεφτείτε το εξής: πολλές εταιρείες τεχνητής νοημοσύνης χρησιμοποιούν εργαλεία ανοικτού κώδικα χωρίς κανέναν φραγμό. Πόσο πιο συνετό θα ήταν να διασφαλίσουμε ότι αυτές οι επενδύσεις παραμένουν ασφαλέστερες στην πηγή τους;
Επιχείρημα 2: Ασφάλεια των πολιτών και των κρίσιμων υποδομών
Και όταν εξετάσουμε τη δημόσια ασφάλεια και την προστασία των κρίσιμων υποδομών, το επιχείρημα γίνεται ακόμη ισχυρότερο. Οι κρατικά υποστηριζόμενοι κυβερνοεγκληματίες συχνά εκμεταλλεύονται ευπάθειες στον ανοικτό κώδικα που ενσωματώνεται σε κρίσιμες υποδομές μέσω τρίτων μερών. Η πρόληψη λοιπόν της διακοπής δημόσιων υπηρεσιών εμπίπτει σαφώς στις αρμοδιότητες οποιασδήποτε κυβέρνησης.
Εταιρικές ενώσεις
Παρόλο που οι κυβερνήσεις έχουν κίνητρο και οι διάφορες εταιρείες από τον ιδιωτικό τομέα έχουν επίσης λόγους να αντιμετωπίσουν το ζήτημα. Λαμβάνοντας υπόψη τις πρακτικές που ακολουθούν για τις προγραμματιστικές ανάγκες τους, οι μεγάλες εταιρείες τεχνολογίας έχουν έννομο συμφέρον για ασφαλέστερο κώδικα στην πηγή. Επιπλέον, πολλοί υπάλληλοι αυτών των εταιρειών συμβάλλουν στη δημιουργία ανοικτού κώδικα. Για παράδειγμα, οι υπάλληλοι της Microsoft συνεισφέρουν περισσότερο κώδικα ανοικτού λογισμικού από οποιαδήποτε άλλη εταιρεία.
Η δέσμευση πόρων από μια μεμονωμένη εταιρεία για την επιδιόρθωση ευπαθειών ανοικτού κώδικα θα αντιμετώπιζε πολλές προκλήσεις. Η συγκεκριμένη εταιρεία θα ανησυχούσε μήπως άλλοι -από τον ανταγωνισμό για παράδειγμα- εκμεταλλεύονταν δωρεάν την εργασία της ενώ πολλοί από την κοινότητα ανοικτού κώδικα ενδεχομένως θα δυσκολεύονταν να δουν με καλό μάτι τα κίνητρα μιας και μόνο εταιρείας. Ακριβώς για αυτούς τους λόγους, ο κλάδος θα χρειαζόταν να δημιουργήσει μια ανεξάρτητη επαγγελματική ένωση αφιερωμένη σε αυτό το ζήτημα ή θα μπορούσε να βασιστεί σε μία υφιστάμενη αρχή που να έχει αυτή την αποστολή.
Μη κερδοσκοπικοί οργανισμοί
Μια άλλη επιλογή θα ήταν ένας κοινωφελής μη κερδοσκοπικός οργανισμός. Τέτοιοι οργανισμοί βρίσκονται μεταξύ του δημόσιου και ιδιωτικού τομέα, λειτουργούν ως ουδέτερο έδαφος και αν είναι καταλλήλως δομημένοι είναι απαλλαγμένοι από συγκρούσεις συμφερόντων. Ένας τέτοιος οργανισμός θα ταίριαζε απόλυτα στο ήθος της κοινότητας του ανοικτού κώδικα καθώς ήδη υπάρχουν τέτοια παραδείγματα. Η βασική ωστόσο πρόκληση για τους μη κερδοσκοπικούς οργανισμούς παραμένει η χρηματοδότηση οπότε είναι απαραίτητο να προσδιοριστεί ένα μοντέλο χρηματοδότησης για να κάνει αυτή την επιλογή βιώσιμη.
Καθιστώντας την ασφάλεια του ανοικτού κώδικα ευθύνη κάποιου: Μήπως είναι δική μας;
Παρά τα «θα μπορούσε» και τα «θα έπρεπε», οι περισσότερες οντότητες δεν πρόκειται να δράσουν χωρίς να έχουν προσωπικό συμφέρον. Στην τελική, αυτοί που διακυβεύουν τα περισσότερα είναι οι χρήστες. Αν οι κατασκευαστές, οι λιανέμποροι, οι εργολάβοι άμυνας, τα δημόσια εκπαιδευτικά ιδρύματα και οι πάροχοι υγειονομικής περίθαλψης ανεβάσουν τα στάνταρντ τους όσον αφορά την ασφάλεια του ανοικτού κώδικα, αυτή η αλλαγή θα συμπαρασύρει ολόκληρο το οικοσύστημα. Αν αυτοί οι μεγάλοι παίκτες δηλώσουν ότι: «δεν αποδεχόμαστε κώδικα ανοικτού λογισμικού εκτός και αν πληροί αυτά τα στάνταρντ» θα αναγκάσουν τους εργολάβους, τις τρίτες εταιρείες ανάπτυξης λογισμικού ή ακόμη και τις δικές τους εσωτερικές ομάδες να αναλάβουν την ευθύνη.
Όπως ακριβώς θα υπάρχουν πάντα ευπάθειες στον ιδιοταγή κώδικα, έτσι και ο ανοικτός κώδικας δεν θα είναι ποτέ πλήρως απαλλαγμένος από σφάλματα. Μπορούμε ωστόσο να δομήσουμε το οικοσύστημα με τέτοιο τρόπο ώστε να παράγει ασφαλέστερο κώδικα, διατηρώντας παράλληλα τα οφέλη που προσφέρει εξ ορισμού ο ανοικτός κώδικας.
Πηγή: Fortra