Πίνακας Περιεχομένων:
- Εισαγωγή
- Αλυσίδα μόλυνσης
- Δέντρο διαδικασίας
- Καμπάνια 1:
– Επιμονή
– Αρχεία BATCH
– Σκριπτ PowerShell
– Φορτωτής
– Xworm/Remcos - Εκστρατεία 2
- Συμπέρασμα
- IOCS
- Ανιχνεύσεις
- TTPs MITRE ATTACK
Εισαγωγή:
Πρόσφατες εκστρατείες απειλών έχουν αποκαλύψει μια εξελισσόμενη χρήση προγραμμάτων φόρτωσης που βασίζονται σε BAT για την παροχή Trojans απομακρυσμένης πρόσβασης, συμπεριλαμβανομένων των XWorm και Remcos. Αυτές οι εκστρατείες συχνά ξεκινούν με ένα αρχείο ZIP, το οποίο συνήθως φιλοξενείται σε αξιόπιστες πλατφόρμες όπως το ImgKit, και έχουν σχεδιαστεί για να εμφανίζονται ως νόμιμο περιεχόμενο για να προσελκύσουν την αλληλεπίδραση των χρηστών.
Κατά την εξαγωγή, το αρχείο ZIP περιέχει ένα εξαιρετικά θολό σενάριο BAT που χρησιμεύει ως το αρχικό στάδιο της αλυσίδας μόλυνσης. Αυτά τα αρχεία BAT χρησιμοποιούν προηγμένες τεχνικές για να αποφύγουν την ανίχνευση στατικού ηλεκτρισμού και είναι υπεύθυνα για την εκτέλεση φορτωτών που βασίζονται στο PowerShell και εισάγουν το ωφέλιμο φορτίο RAT απευθείας στη μνήμη. Αυτή η προσέγγιση επιτρέπει την εκτέλεση χωρίς αρχεία, μια αυξανόμενη τάση στο σύγχρονο κακόβουλο λογισμικό να παρακάμπτει τις άμυνες των τελικών σημείων.
Μια αξιοσημείωτη εξέλιξη σε αυτήν την καμπάνια είναι η χρήση αρχείων SVG για τη διανομή κακόβουλων σεναρίων BAT. Αυτά τα SVG περιέχουν ενσωματωμένο JavaScript που ενεργοποιεί την αλυσίδα εκτέλεσης όταν αποδίδεται σε ευάλωτα περιβάλλοντα ή ενσωματώνεται σε σελίδες ηλεκτρονικού "ψαρέματος" (phishing). Αυτή η τεχνική υπογραμμίζει μια στροφή προς τη χρήση μη παραδοσιακών μορφών αρχείων για την παράδοση κακόβουλου λογισμικού, εκμεταλλευόμενες τις δυνατότητες δέσμης ενεργειών τους για να αποφύγουν τον εντοπισμό.
Αλυσίδα μόλυνσης:

Δέντρο διεργασιών:

Καμπάνια 1:
Κατά τη διάρκεια της ανάλυσης της Καμπάνιας 1, εντοπίσαμε πολλά σενάρια BAT που σχετίζονται με την καμπάνια, υποδεικνύοντας ένα εξελισσόμενο τοπίο απειλών. Ορισμένα από αυτά τα σενάρια φαίνεται να βρίσκονται σε ενεργό ανάπτυξη, περιέχουν μερικό ή δοκιμαστικό κώδικα, ενώ άλλα είναι πλήρως λειτουργικά και ικανά να εκτελέσουν ολόκληρη την αλυσίδα επίθεσης, συμπεριλαμβανομένης της λήψης ωφέλιμου φορτίου και της εκτέλεσης.
Η παρακάτω εικόνα παρουσιάζει δύο αρχεία BAT:
- Μέθοδος 1: Παραδίδεται απευθείας ως συνημμένο μέσω EML (αρχείο email).
- Μέθοδος 2: Λήψη μέσω μιας διεύθυνσης URL που φιλοξενείται στην πλατφόρμα ImageKit.
Αυτή η διακύμανση στις μεθόδους παράδοσης υποδηλώνει ότι οι απειλητικοί παράγοντες πειραματίζονται με διαφορετικές προσεγγίσεις για να βελτιώσουν τα ποσοστά επιτυχίας της μόλυνσης και να αποφύγουν τους μηχανισμούς ανίχνευσης.

Επιμονή:
Το κακόβουλο λογισμικό επιτυγχάνει την επιμονή του δημιουργώντας ένα αρχείο BAT στον φάκελο "Εκκίνηση" των Windows. Αυτό διασφαλίζει ότι το κακόβουλο σενάριο εκτελείται αυτόματα κάθε φορά που ο χρήστης εκκινεί το σύστημα ή συνδέεται στον λογαριασμό του.

Αρχεία BATCH:
Το παρακάτω σχήμα εμφανίζει το σενάριο BAT στην ασαφή μορφή του μαζί με την αποασαφή έκδοσή του.

Σκριπτ PowerShell:
Παρακάτω, το σχήμα δείχνει το παράθυρο διεργασίας PowerShell και τα ορίσματα γραμμής εντολών που χρησιμοποιούνται κατά την εκτέλεση. Αυτό παρέχει μια εικόνα για το πώς το κακόβουλο λογισμικό αξιοποιεί το PowerShell για την παράδοση φορτίου στη μνήμη. Θα αναλύσουμε λεπτομερώς το σενάριο PowerShell στις επόμενες ενότητες για να κατανοήσουμε τον ρόλο του στην ανάπτυξη του XWorm.


Αυτή η εντολή PowerShell εκτελεί το σενάριο αποκωδικοποιώντας μια συμβολοσειρά κωδικοποιημένη με Base64 και εκτελώντας την στη μνήμη. Χρησιμοποιεί την εντολή -nop για να αποφύγει τη φόρτωση του προφίλ χρήστη, την εντολή -w hidden για να κρύψει το παράθυρο και την εντολή iex (Invoke-Expression) για να εκτελέσει το αποκωδικοποιημένο περιεχόμενο.
Απαλλαγμένο σενάριο:

Χωρίσαμε το απεμπλοκαρισμένο σενάριο σε δύο μέρη. Στο πρώτο μέρος του σεναρίου PowerShell, έχει σχεδιαστεί για να εντοπίζει και να εκτελεί έναν εμπεριστατωμένο κώδικα ενσωματωμένο σε ένα αρχείο δέσμης (aoc.bat) που βρίσκεται στον κατάλογο προφίλ του τρέχοντος χρήστη. Πρώτον, ανακτά το όνομα χρήστη από τις μεταβλητές περιβάλλοντος για να κατασκευάσει την πλήρη διαδρομή προς το aoc.bat. Διαβάζει όλες τις γραμμές χρησιμοποιώντας κωδικοποίηση UTF-8 και επαναλαμβάνει κάθε γραμμή, αναζητώντας συγκεκριμένα γραμμές που ξεκινούν με ένα πρόθεμα σχολίου τριπλής άνω τελείας (:::), ακολουθούμενο από μια συμβολοσειρά με κωδικοποίηση Base64. Μόλις βρει μια τέτοια γραμμή, επιχειρεί να αποκωδικοποιήσει τη συμβολοσειρά Base64 σε έναν πίνακα byte και στη συνέχεια να τη μετατρέψει σε μια συμβολοσειρά Unicode που έχει αντιστοιχιστεί στη μεταβλητή $ttzhae. Αυτή η αποκωδικοποιημένη συμβολοσειρά ($ttzhae) περιέχει ένα επιπλέον επίπεδο σεναρίου PowerShell, το οποίο στη συνέχεια εκτελείται στη μνήμη χρησιμοποιώντας το Invoke-Expression. Αυτό επιτρέπει στον εισβολέα να ενσωματώσει και να εκτελέσει κρυφά σύνθετη ή πολυσταδιακή κακόβουλη λογική PowerShell μέσα σε ένα φαινομενικά ακίνδυνο σχόλιο αρχείου δέσμης, επιτρέποντας την κρυφή και χωρίς αρχεία εκτέλεση.

Το σενάριο απενεργοποιεί μέσω προγραμματισμού δύο βασικούς μηχανισμούς ασφαλείας των Windows, το AMSI (Antimalware Scan Interface) και το ETW (Event Tracing for Windows), για να αποφύγει τον εντοπισμό. Αξιοποιεί την αντανάκλαση .NET και τη δημιουργία δυναμικών συνέδρων για την επίλυση εγγενών συναρτήσεων όπως οι GetProcAddress, GetModuleHandle, VirtualProtect και AmsiInitialize. Χρησιμοποιώντας αυτές τις λειτουργίες, εντοπίζει και επιδιορθώνει τη συνάρτηση AmsiScanBuffer στη μνήμη με οδηγίες (mov eax, 0; ret), παρακάμπτοντας αποτελεσματικά τη σάρωση AMSI. Ομοίως, απενεργοποιεί την ανίχνευση συμβάντων αντικαθιστώντας την αρχή του EtwEventWrite με μια εντολή return. Αυτές οι τροποποιήσεις στη μνήμη επιτρέπουν στην κακόβουλη δραστηριότητα PowerShell να εκτελείται κρυφά, χωρίς να καταγράφεται ή να σαρώνεται από... endpoint protection λύσεις.

Στο δεύτερο μέρος του σεναρίου PowerShell, ανακτά πρώτα το όνομα του τρέχοντος χρήστη από το περιβάλλον και κατασκευάζει τη διαδρομή προς ένα αρχείο με όνομα aoc.bat που βρίσκεται στον κατάλογο προφίλ του χρήστη. Προχωρά στην εκτέλεση φορτίων που είναι ενσωματωμένα ως κρυπτογραφημένα και συμπιεσμένα συγκροτήματα .NET που είναι κρυμμένα μέσα σε αυτό το αρχείο δέσμης. Το σενάριο αναζητά συγκεκριμένα μια γραμμή σχολίου με πρόθεμα ::, η οποία περιέχει μια συμβολοσειρά φορτίου με κωδικοποίηση Base64. Αυτή η συμβολοσειρά στη συνέχεια χωρίζεται σε δύο μέρη χρησιμοποιώντας την ανάστροφη κάθετο (\) ως οριοθέτη. Κάθε μέρος υφίσταται αποκωδικοποίηση Base64, αποκρυπτογράφηση AES χρησιμοποιώντας ένα κλειδί με σκληρό κώδικα και IV (σε λειτουργία CBC με συμπλήρωση PKCS7), ακολουθούμενη από αποσυμπίεση GZIP όπως απεικονίζεται στα συνοδευτικά σχήματα. Το αποτέλεσμα είναι δύο ξεχωριστά συγκροτήματα .NET, τα οποία φορτώνονται και εκτελούνται απευθείας στη μνήμη. Η πρώτη συγκρότηση καλείται χωρίς ορίσματα, ενώ η δεύτερη εκτελείται με το '%*' να περνάει ως προσομοιωμένη είσοδο γραμμής εντολών.

Το δεύτερο ωφέλιμο φορτίο παίζει πιο κρίσιμο ρόλο. Λειτουργεί ως φορτωτής υπεύθυνος για την εκτέλεση του τελικού κακόβουλου λογισμικού, το οποίο είναι το XWorm remote access trojan (RAT).

Φορτωτής
Ο φορτωτής έχει σχεδιαστεί για να αποφεύγει τον εντοπισμό, να απενεργοποιεί την καταγραφή συμβάντων και να εκτελεί ενσωματωμένα ωφέλιμα φορτία απευθείας στη μνήμη. Αυτό επιτυγχάνεται είτε αποκρυπτογραφώντας και εκτελώντας εκτελέσιμα αρχεία .NET μέσω του Assembly.Load είτε εκτελώντας αποκρυπτογραφημένο shellcode χρησιμοποιώντας το VirtualProtect και τους πληρεξούσιους.



Δυνατότητες φορτωτή:
- Αποφύγετε την ανίχνευση

- Απενεργοποίηση καταγραφής συμβάντων

- Εξαγωγή και εκτέλεση ενσωματωμένων φορτίων
Εδώ, εντοπίσαμε πολλαπλούς φορτωτές που χρησιμοποιούν τεχνικές εκτέλεσης στη μνήμη για να αποφύγουν τον εντοπισμό και να παραμείνουν κρυφά. Ορισμένοι από αυτούς τους φορτωτές περιέχουν κρυπτογραφημένα εκτελέσιμα αρχεία .NET, τα οποία αποκρυπτογραφούνται κατά τον χρόνο εκτέλεσης και εκτελούνται απευθείας από τη μνήμη χρησιμοποιώντας την εντολή Assembly.Load ακολουθούμενη από την εντολή .EntryPoint. Invoke, επιτρέποντας στον φορτωτή να εκτελεί διαχειριζόμενο κώδικα χωρίς να γράφει το εκτελέσιμο αρχείο στο δίσκο.
Αντίθετα, άλλες παραλλαγές έχουν κρυπτογραφημένο shellcode αντί για δυαδικό αρχείο. Αυτές οι παραλλαγές αποκρυπτογραφούν τον shellcode, τροποποιούν τις προστασίες μνήμης χρησιμοποιώντας το VirtualProtect για να τον καταστήσουν εκτελέσιμο και, στη συνέχεια, τον εκτελούν χρησιμοποιώντας έναν εκπρόσωπο που δημιουργήθηκε μέσω του Marshal.GetDelegateForFunctionPointer. Όπως φαίνεται στα παρακάτω σχήματα,

- Επιμονή

Xworm
Έχουμε αναφερθεί στο XWorm και το Remcos νωρίτερα φέτος, παρέχοντας μια εις βάθος ανάλυση της βασικής λειτουργικότητάς τους, των προηγμένων δυνατοτήτων τους όπως η καταγραφή πλήκτρων (keylogging), η εκτέλεση εντολών από απόσταση, η εξαγωγή δεδομένων και οι μέθοδοι διατήρησης και αποφυγής.

Εκτός από το XWorm, αρκετές παραλλαγές στην ίδια καμπάνια χρησιμοποίησαν επίσης το Remcos , ένα ευρέως γνωστό εμπορικό Trojan Απομακρυσμένης Πρόσβασης (RAT) που προσφέρει μια σειρά από δυνατότητες, όπως απομακρυσμένη πρόσβαση σε επιφάνεια εργασίας, καταγραφή πλήκτρων, εκτέλεση εντολών, χειρισμό αρχείων, καταγραφή στιγμιότυπων οθόνης και εξαγωγή δεδομένων.
Καμπάνια 2:
Η Καμπάνια 2 εισάγει μια αξιοσημείωτη αλλαγή στην παροχή κακόβουλου λογισμικού, αξιοποιώντας αρχεία SVG (Scalable Vector Graphics) ενσωματωμένα με JavaScript, τα οποία χρησιμοποιούνται κυρίως σε επιθέσεις ηλεκτρονικού "ψαρέματος" (phishing). Αυτά τα κακόβουλα SVG έχουν σχεδιαστεί για να εμφανίζονται ως νόμιμα αρχεία εικόνας και είτε αποδίδονται σε ευάλωτα περιβάλλοντα λογισμικού (όπως παρωχημένα προγράμματα προβολής εικόνων ή προγράμματα-πελάτες ηλεκτρονικού ταχυδρομείου) είτε ενσωματώνονται σε ιστοσελίδες ηλεκτρονικού "ψαρέματος" που έχουν σχεδιαστεί για να προσελκύσουν ανυποψίαστους χρήστες. Τώρα, η ενσωματωμένη JavaScript στο αρχείο SVG λειτουργεί ως μηχανισμός ενεργοποίησης, ξεκινώντας την αυτόματη λήψη ενός αρχείου ZIP όταν ανοίγει ή προβάλλεται σε προεπισκόπηση το SVG.
Αυτό το αρχείο ZIP που έχετε κατεβάσει περιέχει ένα ασαφές σενάριο BAT, το οποίο χρησιμεύει ως ο αρχικός φορέας πρόσβασης για το κακόβουλο λογισμικό. Μόλις το σενάριο BAT εκτελεστεί είτε χειροκίνητα από τον χρήστη είτε μέσω τακτικών κοινωνικής μηχανικής, ξεκινά μια αλυσίδα μόλυνσης πολλαπλών σταδίων παρόμοια με αυτήν που παρατηρήθηκε στην Εκστρατεία 1. Συγκεκριμένα, το σενάριο BAT καλεί εντολές PowerShell για να αποκωδικοποιήσει και να εκτελέσει ένα εκτελέσιμο αρχείο φόρτωσης (EXE) απευθείας στη μνήμη. Αυτός ο φορτωτής είναι υπεύθυνος για την αποκρυπτογράφηση και την ανάπτυξη του τελικού φορτίου, το οποίο σε αυτήν την καμπάνια είναι το XWorm Remote Access Trojan (RAT).
Η χρήση του SVG ως μηχανισμού παράδοσης αντιπροσωπεύει μια αξιοσημείωτη εξέλιξη στη μεθοδολογία επίθεσης, καθώς τα αρχεία εικόνας θεωρούνται συνήθως καλοήθη και συχνά εξαιρούνται από τον εις βάθος έλεγχο περιεχομένου από τα παραδοσιακά εργαλεία ασφαλείας. Αξιοποιώντας τις δυνατότητες scripting των SVG, οι απειλητικοί παράγοντες μπορούν να παρακάμψουν αποτελεσματικά τις περιμετρικές άμυνες και να παραδώσουν κακόβουλα ωφέλιμα φορτία με τρόπο χωρίς αρχεία, αθόρυβο.
Συμπέρασμα:
Αυτές οι καμπάνιες υπογραμμίζουν μια αυξανόμενη τάση στη χρήση ασαφών σεναρίων, κακόβουλου λογισμικού χωρίς αρχεία και μη παραδοσιακών μορφών αρχείων όπως τα SVG για την παράδοση Trojans απομακρυσμένης πρόσβασης όπως το XWorm και το Remcos. Ενσωματώνοντας ωφέλιμα φορτία σε αρχεία BAT και εκτελώντας τα μέσω PowerShell, οι εισβολείς παρακάμπτουν αποτελεσματικά τις στατικές άμυνες. Η μετάβαση από τη χρήση SVG σε επιθέσεις ηλεκτρονικού "ψαρέματος" (phishing) στην παράδοση κακόβουλου λογισμικού υπογραμμίζει περαιτέρω την ανάγκη για ανίχνευση συμπεριφοράς, έλεγχο περιεχομένου και βελτιωμένη επίγνωση των χρηστών για την αντιμετώπιση τέτοιων εξελισσόμενων απειλών.
IOCS:
| MD5 | Αρχεία |
| EDA018A9D51F3B09C20E88A15F630DF5 | ΒΔΤ |
| 23E30938E00F89BF345C9C1E58A6CC1D | JS |
| 1CE36351D7175E9244209AE0D42759D9 | ΦΟΡΤΩΤΗΣ |
| EC04BC20CA447556C3BDCFCBF6662C60 | XWORM |
| D439CB98CF44D359C6ABCDDDB6E85454 | REMCOS |
Ανιχνεύσεις:
Trojan.LoaderCiR
Trojan.GenericFC.S29960909
TTPs MITRE ATTACK:
| Τακτική | Αναγνωριστικό και όνομα τεχνικής | Περιγραφή |
| Εκτέλεση | T1059.001 – Διερμηνέας εντολών και σεναρίων: PowerShell | Το PowerShell χρησιμοποιείται για την ερμηνεία εντολών, την αποκρυπτογράφηση δεδομένων και την κλήση ωφέλιμων φορτίων. |
| T1106 – Εκτέλεση μέσω API | Το σενάριο χρησιμοποιεί API .NET (π.χ., Assembly.Load, Invoke) για την εκτέλεση φορτίων στη μνήμη. | |
| Αμυντική υπεκφυγή | T1027 – Συγκαλυμμένα αρχεία ή πληροφορίες | Τα ωφέλιμα φορτία είναι κωδικοποιημένα με Base64, κρυπτογραφημένα με AES και συμπιεσμένα για παράκαμψη των στατικών ανιχνεύσεων. |
| T1140 – Αποκρυπτογράφηση/Αποκωδικοποίηση αρχείων ή πληροφοριών | Το σενάριο αποκωδικοποιεί και αποσυμπιέζει τα ωφέλιμα φορτία πριν από την εκτέλεση. | |
| T1055.012 – Έγχυση διεργασίας: Έγχυση συναρμολόγησης .NET | Τα ωφέλιμα φορτία φορτώνονται στη μνήμη | |
| T1036 – Μεταμφιέσεις | Το κακόβουλο περιεχόμενο είναι κρυμμένο σε αρχείο δέσμης. | |
| Επιμονή | T1053 – Προγραμματισμένη Εργασία/Εργασία | Καθιερώστε την επιμονή μέσω του μενού του strattup. |
| Αρχική πρόσβαση | T1204 – Εκτέλεση χρήστη | Η εκτέλεση εξαρτάται από το αν ο χρήστης εκτελεί χειροκίνητα το αρχείο δέσμης |
| Διοίκησης και Ελέγχου | T1132 – Κωδικοποίηση Δεδομένων | Το Base64 και η κρυπτογράφηση χρησιμοποιούνται για την κωδικοποίηση εντολών ή ωφέλιμων φορτίων. |
| T1219 – Λογισμικό απομακρυσμένης πρόσβασης | Το Xworm παρέχει πλήρη απομακρυσμένη πρόσβαση και έλεγχο στον μολυσμένο κεντρικό υπολογιστή. | |
| Πρόσβαση διαπιστευτηρίων | T1056.001 – Καταγραφή Εισόδου: Καταγραφή Πληκτρολογίου | Το XWorm περιλαμβάνει λειτουργία καταγραφής keylogging για την κλοπή δεδομένων και διαπιστευτηρίων χρήστη. |
| εκδιήθησης | T1041 – Διήθηση μέσω καναλιού C2 | Τα κλεμμένα δεδομένα απομακρύνονται μέσω του ίδιου καναλιού C2 που χρησιμοποιείται από το Xworm. |
Συγγραφέας:
Βαϊμπχάβ Μπιλάντε
Ρουμάνα Σιντίκι



