Η υπογραφή κώδικα είναι μια μέθοδος χρήσης μιας ψηφιακής υπογραφής που βασίζεται σε πιστοποιητικό για ένα κομμάτι λογισμικού, έτσι ώστε το λειτουργικό σύστημα και οι χρήστες να μπορούν να προσδιορίσουν την ασφάλειά του. Μόνο το σωστό λογισμικό μπορεί να χρησιμοποιήσει την αντίστοιχη ψηφιακή του υπογραφή.
Οι χρήστες μπορούν να κάνουν λήψη και εγκατάσταση λογισμικού με ασφάλεια και οι προγραμματιστές προστατεύουν τη φήμη των προϊόντων τους με την υπογραφή κώδικα. Ωστόσο, οι χάκερ και οι διανομείς κακόβουλου λογισμικού χρησιμοποιούν αυτό ακριβώς το σύστημα για να λάβουν κακόβουλο κώδικα μέσω προγραμμάτων προστασίας από ιούς και άλλων προγραμμάτων ασφαλείας . Τι είναι λοιπόν το κακόβουλο λογισμικό με υπογραφή κώδικα και πώς λειτουργεί;
Τι είναι το κακόβουλο λογισμικό με υπογραφή κώδικα;
Όταν το λογισμικό είναι ψηφιακά υπογεγραμμένο, σημαίνει ότι έχει επίσημη ψηφιακή υπογραφή. Η Αρχή έκδοσης πιστοποιητικών εκδίδει ένα πιστοποιητικό σε ένα λογισμικό για να προσδιορίσει ότι το λογισμικό είναι νόμιμο και ασφαλές στη χρήση.
Οι χρήστες δεν θα χρειάζεται να ανησυχούν επειδή το λειτουργικό σύστημα θα ελέγξει το πιστοποιητικό και θα επαληθεύσει αυτήν την ψηφιακή υπογραφή. Για παράδειγμα, τα Windows χρησιμοποιούν μια αλυσίδα πιστοποιητικών που περιέχει όλα τα απαραίτητα πιστοποιητικά για να διασφαλίσει ότι το λογισμικό είναι νόμιμο.
Η αλυσίδα πιστοποιητικών περιέχει όλα τα πιστοποιητικά που είναι απαραίτητα για την πιστοποίηση της οντότητας που προσδιορίζεται από το τελικό πιστοποιητικό. Στην πραγματικότητα, αποτελείται από ένα πιστοποιητικό τερματικού, ένα ενδιάμεσο πιστοποιητικό CA και ένα πιστοποιητικό CA ρίζας που είναι αξιόπιστο από όλα τα μέρη της αλυσίδας. Κάθε ενδιάμεσο πιστοποιητικό ΑΠ στην αλυσίδα περιέχει ένα πιστοποιητικό που εκδίδεται από την ΑΠ ένα επίπεδο πάνω από αυτό. Η αρχή CA εκδίδει πιστοποιητικά για τον εαυτό της.
Μόλις το σύστημα είναι σε λειτουργία και λειτουργεί, μπορείτε να εμπιστευτείτε το λογισμικό, το σύστημα υπογραφής κώδικα και την ΑΠ. Το κακόβουλο λογισμικό είναι κακόβουλο λογισμικό, δεν είναι αξιόπιστο και δεν έχει πρόσβαση στην Αρχή έκδοσης πιστοποιητικών ή στην υπογραφή κώδικα.
Χάκερ κλέβουν πιστοποιητικά από την Αρχή Πιστοποιητικών
Το λογισμικό προστασίας από ιούς γνωρίζει ότι το κακόβουλο λογισμικό είναι κακόβουλο επειδή επηρεάζει αρνητικά το σύστημά σας. Ενεργοποιεί προειδοποιήσεις, οι χρήστες αναφέρουν προβλήματα και το λογισμικό προστασίας από ιούς μπορεί να δημιουργήσει υπογραφές κακόβουλου λογισμικού για την προστασία άλλων υπολογιστών που χρησιμοποιούν την ίδια μηχανή προστασίας από ιούς.
Ωστόσο, εάν οι δημιουργοί κακόβουλου λογισμικού μπορούσαν να υπογράψουν κακόβουλο λογισμικό χρησιμοποιώντας επίσημες ψηφιακές υπογραφές, η παραπάνω διαδικασία δεν θα συνέβαινε. Αντίθετα, κακόβουλο λογισμικό με κώδικα κώδικα μπορεί να εισέλθει στο σύστημα μέσω της επίσημης διαδρομής, επειδή το λογισμικό προστασίας από ιούς και το λειτουργικό σας σύστημα δεν εντοπίζουν τίποτα επικίνδυνο.
Σύμφωνα με την έρευνα της Trend Micro, ολόκληρη η αγορά κακόβουλου λογισμικού επικεντρώνεται στην υποστήριξη της ανάπτυξης και της διανομής κακόβουλου λογισμικού με υπογραφή κώδικα. Οι χειριστές κακόβουλου λογισμικού έχουν πρόσβαση σε έγκυρα πιστοποιητικά που χρησιμοποιούνται για την υπογραφή κακόβουλου κώδικα. Ο παρακάτω πίνακας δείχνει την ποσότητα κακόβουλου λογισμικού που χρησιμοποιεί την υπογραφή κώδικα για την αποφυγή λογισμικού προστασίας από ιούς από τον Απρίλιο του 2018.
Η έρευνα της Trend Micro δείχνει επίσης ότι περίπου το 66% του κακόβουλου λογισμικού έχει ψηφιακές υπογραφές. Επιπλέον, υπάρχουν ορισμένοι συγκεκριμένοι τύποι κακόβουλου λογισμικού που έχουν πολλαπλές εκδόσεις ψηφιακών υπογραφών, όπως Trojans , droppers και ransomware .
Από πού προέρχεται το ψηφιακό πιστοποιητικό υπογραφής κώδικα;
Οι διανομείς και οι προγραμματιστές κακόβουλου λογισμικού έχουν δύο τρόπους για να δημιουργήσουν κακόβουλο λογισμικό με υπογραφή κώδικα. Κλέβουν πιστοποιητικά από την Αρχή Πιστοποιητικών με απευθείας ή απόκτηση ή πλαστοπροσωπία ενός νόμιμου οργανισμού και ζητώντας πιστοποιητικό από την ΑΠ.
Όπως μπορείτε να δείτε, η CA δεν είναι το μόνο μέρος που στοχεύουν οι χάκερ. Οι διανομείς με πρόσβαση σε νόμιμα πιστοποιητικά μπορούν να πουλήσουν αξιόπιστα ψηφιακά υπογεγραμμένα πιστοποιητικά σε προγραμματιστές και διανομείς κακόβουλου λογισμικού.
Μια ερευνητική ομάδα ασφαλείας από το Πανεπιστήμιο Masaryk στην Τσεχική Δημοκρατία και το Κέντρο Κυβερνοασφάλειας του Μέριλαντ ανακάλυψε τέσσερις οργανισμούς που πουλούσαν πιστοποιητικά Microsoft Authenticode σε ανώνυμους αγοραστές. Μόλις ένας προγραμματιστής κακόβουλου λογισμικού έχει πιστοποιητικό Microsoft Authenticode, μπορεί να υπογράψει οποιοδήποτε πιθανό κακόβουλο λογισμικό μέσω της υπογραφής κώδικα και της προστασίας που βασίζεται σε πιστοποιητικά.
Σε ορισμένες άλλες περιπτώσεις, αντί να κλέψουν πιστοποιητικά, οι χάκερ θα διεισδύσουν στον διακομιστή δημιουργίας λογισμικού. Όταν κυκλοφορήσει μια νέα έκδοση λογισμικού, θα έχει ένα νόμιμο πιστοποιητικό, οι χάκερ εκμεταλλεύονται αυτή τη διαδικασία για να προσθέσουν κακόβουλο κώδικα.
Παράδειγμα κακόβουλου λογισμικού με υπογραφή κωδικού
Λοιπόν, πώς μοιάζει το κακόβουλο λογισμικό με υπογραφή κώδικα; Ακολουθούν τρία παραδείγματα αυτού του τύπου κακόβουλου λογισμικού.
- Κακόβουλο λογισμικό Stuxnet : Αυτό το κακόβουλο λογισμικό κατέστρεψε το πυρηνικό πρόγραμμα του Ιράν χρησιμοποιώντας δύο κλεμμένα πιστοποιητικά και τέσσερις ευπάθειες zero-day. Αυτά τα πιστοποιητικά κλάπηκαν από δύο εταιρείες JMicron και Realtek. Το Stuxnet χρησιμοποίησε κλεμμένα πιστοποιητικά για να αποφύγει τη νέα απαίτηση εισαγωγής των Windows ότι όλα τα προγράμματα οδήγησης απαιτούν επαλήθευση.
- Παραβίαση διακομιστή Asus: Μεταξύ Ιουνίου και Νοεμβρίου 2018, χάκερ εισχώρησαν σε έναν διακομιστή Asus που χρησιμοποιούν οι εταιρείες για να προωθήσουν ενημερώσεις λογισμικού στους χρήστες. Έρευνα στο Kaspersky Lab δείχνει ότι περίπου 500 χιλιάδες συσκευές Windows έλαβαν αυτήν την κακόβουλη ενημέρωση πριν εντοπιστούν. Χωρίς να κλέψουν πιστοποιητικά, αυτοί οι χάκερ υπογράφουν τα νόμιμα ψηφιακά πιστοποιητικά Asus για το κακόβουλο λογισμικό τους πριν ο διακομιστής λογισμικού διανείμει ενημερώσεις συστήματος.
- Κακόβουλο λογισμικό Flame: Παραλλαγή του κακόβουλου λογισμικού της μονάδας Flame που στοχεύει χώρες της Μέσης Ανατολής, χρησιμοποιώντας δόλια υπογεγραμμένα πιστοποιητικά για την αποφυγή εντοπισμού. Οι προγραμματιστές του Flame χρησιμοποίησαν έναν αδύναμο αλγόριθμο κρυπτογράφησης για να παραποιήσουν ψηφιακά πιστοποιητικά υπογραφής κώδικα, κάνοντάς τα να φαίνεται σαν να τα είχε υπογράψει η Microsoft. Σε αντίθεση με το Stuxnet, το οποίο προοριζόταν να είναι καταστροφικό, το Flame είναι ένα εργαλείο κατασκοπείας, που αναζητά αρχεία PDF, αρχεία AutoCAD, αρχεία κειμένου και άλλους τύπους σημαντικών βιομηχανικών εγγράφων.
Πώς να αποφύγετε κακόβουλο λογισμικό με υπογραφή κώδικα;
Αυτός ο τύπος κακόβουλου λογισμικού χρησιμοποιεί υπογραφή κώδικα για να αποφύγει τον εντοπισμό από λογισμικό και συστήματα προστασίας από ιούς, επομένως η προστασία από κακόβουλο λογισμικό με υπογραφή κώδικα είναι εξαιρετικά δύσκολη. Η ενημέρωση του λογισμικού και των συστημάτων προστασίας από ιούς είναι πάντα απαραίτητη, αποφύγετε να κάνετε κλικ σε άγνωστους συνδέσμους και ελέγξτε προσεκτικά από πού προέρχεται ο σύνδεσμος πριν τον ακολουθήσετε. Ανατρέξτε στο άρθρο Κίνδυνοι από κακόβουλο λογισμικό και πώς να το αποφύγετε .