Εντοπίστηκε σκουλήκι FritzFrog, μολύνει διακομιστές μέσω SSH και δημιουργεί ένα αποκεντρωμένο botnet

Η εταιρεία Guardicore, που ειδικεύεται στην προστασία κέντρων δεδομένων και συστημάτων cloud, αποκάλυψε FritzFrog, ένα νέο κακόβουλο λογισμικό υψηλής τεχνολογίας που επιτίθεται σε διακομιστές που βασίζονται σε Linux. Το FritzFrog συνδυάζει ένα worm που εξαπλώνεται μέσω μιας επίθεσης bruteforce σε διακομιστές με μια ανοιχτή θύρα SSH και στοιχεία για να δημιουργήσει ένα αποκεντρωμένο botnet που λειτουργεί χωρίς κόμβους ελέγχου και δεν έχει κανένα σημείο αποτυχίας.

Για την κατασκευή ενός botnet, χρησιμοποιείται ένα ιδιόκτητο πρωτόκολλο P2P, στο οποίο οι κόμβοι αλληλεπιδρούν μεταξύ τους, συντονίζουν την οργάνωση των επιθέσεων, υποστηρίζουν τη λειτουργία του δικτύου και παρακολουθούν ο ένας την κατάσταση του άλλου. Νέα θύματα εντοπίζονται πραγματοποιώντας μια επίθεση ωμής δύναμης σε διακομιστές που δέχονται αιτήματα μέσω SSH. Όταν ανιχνεύεται ένας νέος διακομιστής, αναζητείται ένα λεξικό με τυπικούς συνδυασμούς συνδέσεων και κωδικών πρόσβασης. Ο έλεγχος μπορεί να πραγματοποιηθεί μέσω οποιουδήποτε κόμβου, γεγονός που καθιστά δύσκολο τον εντοπισμό και τον αποκλεισμό χειριστών botnet.

Σύμφωνα με ερευνητές, το botnet έχει ήδη περίπου 500 κόμβους, συμπεριλαμβανομένων των διακομιστών πολλών πανεπιστημίων και μιας μεγάλης σιδηροδρομικής εταιρείας. Σημειώνεται ότι κύριοι στόχοι της επίθεσης είναι δίκτυα εκπαιδευτικών ιδρυμάτων, ιατρικών κέντρων, κρατικών υπηρεσιών, τραπεζών και εταιρειών τηλεπικοινωνιών. Αφού παραβιαστεί ο διακομιστής, οργανώνεται σε αυτόν η διαδικασία εξόρυξης του κρυπτονομίσματος Monero. Η δραστηριότητα του εν λόγω κακόβουλου λογισμικού παρακολουθείται από τον Ιανουάριο του 2020.

Το ιδιαίτερο με το FritzFrog είναι ότι διατηρεί όλα τα δεδομένα και τον εκτελέσιμο κώδικα μόνο στη μνήμη. Οι αλλαγές στο δίσκο συνίστανται μόνο στην προσθήκη ενός νέου κλειδιού SSH στο αρχείο authorized_keys, το οποίο στη συνέχεια χρησιμοποιείται για πρόσβαση στον διακομιστή. Τα αρχεία συστήματος δεν αλλάζουν, γεγονός που καθιστά το σκουλήκι αόρατο σε συστήματα που ελέγχουν την ακεραιότητα χρησιμοποιώντας αθροίσματα ελέγχου. Η μνήμη αποθηκεύει επίσης λεξικά για κωδικούς πρόσβασης και δεδομένα για εξόρυξη, τα οποία συγχρονίζονται μεταξύ των κόμβων χρησιμοποιώντας το πρωτόκολλο P2P.

Τα κακόβουλα στοιχεία είναι καμουφλαρισμένα ως διεργασίες ifconfig, libexec, php-fpm και nginx. Οι κόμβοι botnet παρακολουθούν την κατάσταση των γειτόνων τους και, εάν ο διακομιστής επανεκκινηθεί ή ακόμα και επανεγκατασταθεί το λειτουργικό σύστημα (εάν ένα τροποποιημένο αρχείο authorized_keys μεταφέρθηκε στο νέο σύστημα), ενεργοποιούν εκ νέου κακόβουλα στοιχεία στον κεντρικό υπολογιστή. Για επικοινωνία, χρησιμοποιείται τυπικό SSH - το κακόβουλο λογισμικό εκκινεί επιπλέον ένα τοπικό "netcat" που συνδέεται με τη διεπαφή localhost και ακούει την κίνηση στη θύρα 1234, στην οποία οι εξωτερικοί κεντρικοί υπολογιστές έχουν πρόσβαση μέσω μιας σήραγγας SSH, χρησιμοποιώντας ένα κλειδί από τα authorized_keys για σύνδεση.

Εντοπίστηκε σκουλήκι FritzFrog, μολύνει διακομιστές μέσω SSH και δημιουργεί ένα αποκεντρωμένο botnet

Ο κωδικός στοιχείου FritzFrog είναι γραμμένος στο Go και εκτελείται σε λειτουργία πολλαπλών νημάτων. Το κακόβουλο λογισμικό περιλαμβάνει πολλές ενότητες που εκτελούνται σε διαφορετικά νήματα:

  • Cracker - αναζητά κωδικούς πρόσβασης σε διακομιστές που έχουν προσβληθεί.
  • CryptoComm + Parser - οργανώνει μια κρυπτογραφημένη σύνδεση P2P.
  • Το CastVotes είναι ένας μηχανισμός για την από κοινού επιλογή κεντρικών υπολογιστών στόχων για επίθεση.
  • TargetFeed - Λαμβάνει μια λίστα με κόμβους για επίθεση από γειτονικούς κόμβους.
  • Το DeployMgmt είναι μια υλοποίηση ενός τύπου worm που διανέμει κακόβουλο κώδικα σε έναν παραβιασμένο διακομιστή.
  • Κάτοχος - υπεύθυνος για τη σύνδεση με διακομιστές που εκτελούν ήδη κακόβουλο κώδικα.
  • Συναρμολόγηση - συναρμολογεί ένα αρχείο στη μνήμη από χωριστά μεταφερόμενα μπλοκ.
  • Antivir - μια ενότητα για την καταστολή ανταγωνιστικού κακόβουλου λογισμικού, εντοπίζει και τερματίζει διαδικασίες με τη συμβολοσειρά "xmr" που καταναλώνουν πόρους της CPU.
  • Το Libexec είναι μια ενότητα για την εξόρυξη του κρυπτονομίσματος Monero.

Το πρωτόκολλο P2P που χρησιμοποιείται στο FritzFrog υποστηρίζει περίπου 30 εντολές που είναι υπεύθυνες για τη μεταφορά δεδομένων μεταξύ κόμβων, την εκτέλεση σεναρίων, τη μεταφορά στοιχείων κακόβουλου λογισμικού, την κατάσταση δημοσκόπησης, την ανταλλαγή αρχείων καταγραφής, την εκκίνηση διακομιστή μεσολάβησης κ.λπ. Οι πληροφορίες μεταδίδονται σε ξεχωριστό κρυπτογραφημένο κανάλι με σειριοποίηση σε μορφή JSON. Η κρυπτογράφηση χρησιμοποιεί ασύμμετρη κρυπτογράφηση AES και κωδικοποίηση Base64. Το πρωτόκολλο DH χρησιμοποιείται για την ανταλλαγή κλειδιών (Ο Ντίφι-Χέλμαν). Για τον προσδιορισμό της κατάστασης, οι κόμβοι ανταλλάσσουν συνεχώς αιτήματα ping.

Όλοι οι κόμβοι botnet διατηρούν μια κατανεμημένη βάση δεδομένων με πληροφορίες σχετικά με συστήματα που έχουν υποστεί επίθεση και παραβιάζονται. Οι στόχοι επίθεσης συγχρονίζονται σε όλο το botnet - κάθε κόμβος επιτίθεται σε έναν ξεχωριστό στόχο, δηλ. δύο διαφορετικοί κόμβοι botnet δεν θα επιτεθούν στον ίδιο κεντρικό υπολογιστή. Οι κόμβοι επίσης συλλέγουν και μεταδίδουν τοπικά στατιστικά στοιχεία σε γείτονες, όπως το μέγεθος της ελεύθερης μνήμης, το χρόνο λειτουργίας, το φόρτο της CPU και τη δραστηριότητα σύνδεσης SSH. Αυτές οι πληροφορίες χρησιμοποιούνται για να αποφασιστεί εάν θα ξεκινήσει η διαδικασία εξόρυξης ή αν θα χρησιμοποιηθεί ο κόμβος μόνο για επίθεση σε άλλα συστήματα (για παράδειγμα, η εξόρυξη δεν ξεκινά σε φορτωμένα συστήματα ή συστήματα με συχνές συνδέσεις διαχειριστή).

Για να αναγνωρίσουν τον FritzFrog, οι ερευνητές έχουν προτείνει ένα απλό σενάριο κελύφους. Για τον προσδιορισμό της βλάβης του συστήματος
σημάδια όπως η παρουσία σύνδεσης ακρόασης στη θύρα 1234, η παρουσία κακόβουλο κλειδί σε authorized_keys (το ίδιο κλειδί SSH είναι εγκατεστημένο σε όλους τους κόμβους) και την παρουσία στη μνήμη εκτελούμενων διεργασιών "ifconfig", "libexec", "php-fpm" και "nginx" που δεν έχουν συσχετισμένα εκτελέσιμα αρχεία ("/proc/ /exe" δείχνει σε ένα απομακρυσμένο αρχείο). Ένα σημάδι μπορεί επίσης να είναι η παρουσία κίνησης στη θύρα δικτύου 5555, η οποία εμφανίζεται όταν το κακόβουλο λογισμικό αποκτά πρόσβαση στο τυπικό pool web.xmrpool.eu κατά την εξόρυξη του κρυπτονομίσματος Monero.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο