HttpTroy Backdoor
Ένας δράστης που συνδέεται με τη Βόρεια Κορέα και εντοπίστηκε ως Kimsuky έχει παρατηρηθεί να παραδίδει ένα προηγουμένως άγνωστο backdoor, που εντοπίστηκε ως «HttpTroy», εναντίον ενός μόνο στόχου στη Νότια Κορέα. Η αποκάλυψη δεν περιελάμβανε χρονοδιάγραμμα, αλλά οι ερευνητές αναφέρουν ότι η εισβολή ξεκίνησε με ένα προσεκτικά σχεδιασμένο πακέτο ηλεκτρονικού "ψαρέματος" (phishing) που πλαστογράφησε ένα τιμολόγιο VPN για να ξεγελάσει το θύμα ώστε να ανοίξει το κακόβουλο αρχείο.
Πίνακας περιεχομένων
Παράδοση και Αρχική Εκτέλεση
Η μόλυνση ξεκίνησε με ένα αρχείο ZIP που εμφανιζόταν ως τιμολόγιο για εξοπλισμό VPN. Μέσα υπήρχε ένα αρχείο SCR των Windows που, όταν εκτελούνταν, εκκινούσε μια αυτοματοποιημένη αλυσίδα εκτέλεσης τριών σταδίων. Το πρώτο στάδιο είναι ένα μικρό dropper που υλοποιείται ως δυαδικό αρχείο Golang. Αυτό το dropper μεταφέρει τρεις ενσωματωμένους πόρους, ένας από τους οποίους είναι ένα καλοήθη PDF που εμφανίζεται στον χρήστη ως δόλωμα, έτσι ώστε η κακόβουλη δραστηριότητα να εκτελείται απαρατήρητη στο παρασκήνιο.
Η Αλυσίδα Εκτέλεσης
- Μικρό σταγονόμετρο Golang (περιέχει ενσωματωμένο PDF με δόλωμα και άλλα ωφέλιμα φορτία)
- Στοιχείο φορτωτή με όνομα MemLoad
- Το τελικό backdoor DLL ονομάστηκε HttpTroy
Επιμονή και συμπεριφορά φορτωτή
Ο φορτωτής, MemLoad, εκτελείται ταυτόχρονα με τον dropper και χειρίζεται την ανάπτυξη persistence και payload. Δημιουργεί μια προγραμματισμένη εργασία με την ονομασία 'AhnlabUpdate' — μια προφανής προσπάθεια μίμησης του AhnLab για τη μείωση των υποψιών — και χρησιμοποιεί αυτήν την εργασία για να διασφαλίσει ότι το backdoor φορτώνεται σε συνεχή βάση. Το MemLoad είναι επίσης υπεύθυνο για την αποκρυπτογράφηση και την εισαγωγή του backdoor του DLL στον χώρο της διεργασίας υποδοχής για εκτέλεση.
Δυνατότητες που παρέχονται από την πίσω πόρτα
- Μεταφόρτωση και λήψη αυθαίρετων αρχείων από/προς τον κεντρικό υπολογιστή του θύματος
- Λήψη στιγμιότυπων οθόνης της επιφάνειας εργασίας
- Εκτέλεση εντολών με αυξημένα δικαιώματα και δημιουργία αντίστροφων κελυφών
- Φόρτωση και εκτέλεση εκτελέσιμων αρχείων απευθείας στη μνήμη (εκτέλεση χωρίς αρχεία)
- Τερματισμός διεργασιών και αφαίρεση ιχνών δραστηριότητας
Διοίκηση και Έλεγχος και Συμπεριφορά Δικτύου
Το HttpTroy επικοινωνεί με τον ελεγκτή του μέσω απλού HTTP στέλνοντας αιτήματα POST σε έναν τομέα C2 που αναγνωρίζεται ως load.auraria.org. Η χρήση του HTTP POST κάνει την κίνηση δικτύου να αναμειγνύεται με την κανονική κίνηση ιστού, εκτός εάν υπάρχει συγκεκριμένο προφίλ.
Τεχνικές αντι-ανάλυσης και συσκότισης
Το εμφύτευμα χρησιμοποιεί διάφορα μέτρα απόκρυψης σε επίπεδα για να εμποδίσει τη στατική ανάλυση και την ανίχνευση υπογραφών. Αντί να κωδικοποιεί ονόματα και συμβολοσειρές API, αποκρύπτει τις κλήσεις API μέσω προσαρμοσμένων ρουτινών κατακερματισμού και αποκρύπτει κειμενικά αντικείμενα με χειρισμούς τύπου XOR και SIMD. Είναι σημαντικό ότι δεν επαναχρησιμοποιεί τις ίδιες τιμές κατακερματισμού ή κωδικοποιήσεις συμβολοσειρών — το κακόβουλο λογισμικό ανακατασκευάζει τα απαιτούμενα hashes και τις συμβολοσειρές API εν κινήσει χρησιμοποιώντας ποικίλες αριθμητικές και λογικές πράξεις, γεγονός που αυξάνει το κόστος της αντίστροφης μηχανικής και της δημιουργίας υπογραφών.
Απόδοση και Συμφραζόμενα
Οι δείκτες συμπεριφοράς και η στόχευση ευθυγραμμίζουν τη δραστηριότητα με το Kimsuky. Η επίθεση φαίνεται να είναι ένα στοχευμένο spear-phish που στοχεύει έναν Νοτιοκορεάτη αποδέκτη. Η ακριβής χρονική στιγμή του περιστατικού δεν δημοσιεύτηκε από τους ερευνητές.
Σύναψη
Για την ανίχνευση και τον μετριασμό πιθανών μολύνσεων που αφορούν το HttpTroy, οι οργανισμοί θα πρέπει να παρακολουθούν στενά τα συστήματά τους για τυχόν ύποπτες προγραμματισμένες εργασίες, ιδίως εκείνες που παρουσιάζονται ως νόμιμες ενημερώσεις προμηθευτών. Οι άμυνες δικτύου θα πρέπει να διαμορφώνονται ώστε να εντοπίζουν και να επισημαίνουν επικοινωνίες HTTP POST που απευθύνονται σε άγνωστους ή ασυνήθιστους εξωτερικούς τομείς, επιτρέποντας την βαθύτερη επιθεώρηση των μεταδιδόμενων δεδομένων, όταν είναι δυνατόν.
Συνιστάται επίσης στις ομάδες ασφαλείας να περιορίζουν ή να αποκλείουν την εκτέλεση μη αναμενόμενων αρχείων SCR και μη αναγνωρισμένων δυαδικών αρχείων Golang σε όλα τα τελικά σημεία. Επιπλέον, η ανάπτυξη ισχυρών λύσεων προστασίας τελικών σημείων ικανών να αναγνωρίζουν την εκτέλεση κώδικα στη μνήμη και να ανιχνεύουν ανώμαλη δραστηριότητα έγχυσης διεργασιών μπορεί να μειώσει σημαντικά τον κίνδυνο παραβίασης.