Ακαδημαϊκοί ερευνητές έχουν δημοσιεύσει λεπτομέρειες σχετικά με μια νέα μέθοδο επίθεσης, την οποία αποκαλούν «Trojan Source», που επιτρέπει την εισαγωγή τρωτών σημείων στον πηγαίο κώδικα έργων λογισμικού, με τρόπο που δεν μπορούν να εντοπίσουν οι χρήστες.
Δείτε επίσης: Toddler: Το νέο mobile banking trojan που διανέμεται σε όλη την Ευρώπη
Το Trojan Source βασίζεται σε ένα απλό τέχνασμα που δεν απαιτεί τροποποίηση του μεταγλωττιστή για τη δημιουργία ευάλωτων δυαδικών αρχείων.
Η μέθοδος λειτουργεί με μερικές από τις πιο ευρέως χρησιμοποιούμενες γλώσσες προγραμματισμού σήμερα και οι κακόβουλοι παράγοντες θα μπορούσαν να τη χρησιμοποιήσουν για επιθέσεις εφοδιαστικής αλυσίδας.
Ερευνητές από το Πανεπιστήμιο του Κέιμπριτζ στο Ηνωμένο Βασίλειο, αποκάλυψαν και επέδειξαν την κατηγορία επιθέσεων «Trojan Source», που θα μπορούσαν να θέσουν σε κίνδυνο το λογισμικό και τις αλυσίδες εφοδιασμού πρώτου κατασκευαστή.
TikTok: Μήνυση από 13 πολιτείες γιατί βλάπτει τα παιδιά
Τι πρέπει να ελέγξετε πριν σαρώσετε ένα QR code;
Εξερεύνηση του Άρη από ανθρώπους έως το 2035
Τα παραδείγματα που παρέχουν, είναι για έργα γραμμένα σε γλώσσες C, C++, C#, JavaScript, Java, Rust, Go και Python, όπου ένας εισβολέας μπορεί να στοχεύσει την κωδικοποίηση αρχείων πηγαίου κώδικα για να εισάγει τρωτά σημεία.
Χρησιμοποιώντας χαρακτήρες ελέγχου που είναι ενσωματωμένοι σε σχόλια και συμβολοσειρές, ένας παράγοντας απειλής μπορεί να αναδιατάξει τον πηγαίο κώδικα για να αλλάξει τη λογική του με τρόπο που να δημιουργεί μια εκμεταλλεύσιμη ευπάθεια.
Δείτε ακόμα: Διαρροή δεδομένων celebrities μετά από ransomware επίθεση στη Graff
Οι ερευνητές έδειξαν ότι ένας τρόπος για να επιτευχθεί αυτό, είναι με τη χρήση στοιχείων ελέγχου Unicode για αμφίδρομο κείμενο, ώστε να υπαγορευτεί η κατεύθυνση στην οποία εμφανίζεται το περιεχόμενο. Αυτή η μέθοδος αναφέρεται τώρα ως CVE-2021-42574.
Όπως φαίνεται στην παρακάτω εικόνα, χρησιμοποιώντας τα στοιχεία ελέγχου RLI/RLI μέσα στη συμβολοσειρά, η δεύτερη γραμμή μεταγλωττίζεται ενώ το ανθρώπινο μάτι τη διαβάζει ως σχόλιο που ο μεταγλωττιστής θα αγνοούσε.
Ένας άλλος τρόπος είναι μια επίθεση ομογλυφικών (CVE-2021-42694), όπου δύο διαφορετικοί χαρακτήρες έχουν παρόμοια οπτική αναπαράσταση, όπως ο αριθμός “μηδέν” και το γράμμα “O” ή το μικρό “L” και το κεφαλαίο “i. ”
Σε μια επίθεση με ομόγλυφο Trojan Source, το ανθρώπινο μάτι θα δει και τις δύο συναρτήσεις πανομοιότυπες, ενώ ο μεταγλωττιστής θα κάνει διάκριση μεταξύ του λατινικού “H” και του κυριλλικού “H” και αντιμετωπίζει τον κώδικα σαν να έχει δύο διαφορετικές λειτουργίες, οπότε το αποτέλεσμα δεν θα να είναι ίδιο.
Σε ένα έγγραφο [PDF] που περιγράφει λεπτομερώς τη νέα μέθοδο επίθεσης Trojan Source, οι ερευνητές επισημαίνουν ότι οι χαρακτήρες παράκαμψης αμφίδρομης κατεύθυνσης (Bidi) παραμένουν μέσω της ενέργειας αντιγραφής/επικόλλησης στα περισσότερα προγράμματα περιήγησης, επεξεργαστές και λειτουργικά συστήματα.
Δείτε επίσης: FontOnLake malware: Στοχεύει Linux συστήματα μέσω trojanized utilities
Ακολουθώντας την αρχή της χρήσης παρακάμψεων Bidi για τη δημιουργία κώδικα που να είναι έγκυρος κατά την αναδιάταξη, οι ερευνητές βρήκαν τουλάχιστον τρεις τεχνικές που επιτρέπουν την εκμετάλλευση του πηγαίου κώδικα.
Ένας τρόπος άμυνας έναντι του Trojan Source είναι να απορρίψετε τη χρήση χαρακτήρων ελέγχου για την κατεύθυνση του κειμένου στις προδιαγραφές γλώσσας και σε μεταγλωττιστές που υλοποιούν τις γλώσσες.