Setelah RTM. Investigasi forensik komputer yang terinfeksi trojan perbankan



Sudah banyak yang ditulis tentang serangan trojan perbankan RTM terhadap akuntan dan direktur keuangan, termasuk pakar Grup-IB, tetapi sejauh ini belum ada studi kasus tunggal perangkat yang terinfeksi RTM di bidang publik. Untuk memperbaiki ketidakadilan ini, salah satu pakar terkemuka dalam forensik komputer Group-IB, Oleg Skulkin , berbicara secara rinci tentang bagaimana melakukan penyelidikan forensik komputer yang terinfeksi trojan perbankan sebagai bagian dari respons / investigasi insiden.

Bagaimana semuanya dimulai


Para peneliti mengetahui tentang kegiatan kelompok kriminal RTM pada Desember 2015. Sejak itu, surat phishing yang mendistribusikan trojan ini telah dikirim ke kotak surat elektronik korban potensial dengan keteguhan yang patut ditiru.

Seperti yang Anda ketahui, dari September hingga Desember, grup RTM mengirim lebih dari 11.000 email berbahaya. Penjahat dunia maya tidak akan berhenti pada apa yang telah dicapai, sebagaimana dibuktikan oleh semua surat baru yang kami rekam baik pada sensor yang melindungi klien kami dan dalam rangka mengumpulkan data tentang ancaman saat ini.

Pada artikel ini saya akan memberitahu Anda bagaimana melakukan penyelidikan forensik, atau hanya forensik, dari citra drive komputer yang terinfeksi dengan RTM Trojan perbankan.

Diperlukan Pendahuluan

Bayangkan kita tidak tahu tentang infeksi komputer RTM, tetapi hanya fakta kompromi, yang hasilnya adalah pencurian uang - ini akan memungkinkan kita untuk membangun proses penelitian lebih menarik, dan juga membuatnya berlaku untuk kasus-kasus lain. Saya juga ingin menarik perhatian pada fakta bahwa dalam kerangka artikel ini saya tidak akan memikirkan teknik reverse Trojan: pertama, ini bukan kompetensi ilmuwan forensik, dan kedua, rekan saya, Semyon Rogachev, sudah menulis tentang ini secara rinci tentang Habré .

Jadi, yang kita miliki hanyalah gambar drive komputer dalam format "E01" (Encase Image File Format). Untuk memulainya, akan menyenangkan untuk mengetahui apa yang ada di dalamnya. Paling tidak, sistem operasinya, karena dari situ dan versinya, tentu saja, bahwa keberadaan artefak forensik tertentu yang harus kita jelajahi tergantung.

1. Kami akan menggunakan utilitas mmls dari paket Sleuth Kit dari Brian Carrier:



Apa yang kita miliki Beberapa partisi NTFS mirip dengan Windows. Kami perlu memastikan - kami akan mencoba mencari file registri, misalnya, PERANGKAT LUNAK.

2. Kami akan menggunakan utilitas fls (Sleuth Kit) dan findstr untuk mengetahui nomor rekaman yang sesuai di tabel file utama (MFT):



Oke, sekarang kita bisa menyalin file yang kita butuhkan untuk analisis lebih lanjut menggunakan icat (Sleuth Kit):

icat -o 718848 E: \ RTM.E01 234782> PERANGKAT LUNAK

Jadi, kami memiliki file registri PERANGKAT LUNAK, kami dapat mengekstraksi informasi yang paling signifikan, misalnya, menggunakan RegRipper Harlan Carvey. Kami saat ini tertarik pada isi bagian Microsoft \ Windows NT \ CurrentVersion:



Sekarang kita tahu bahwa komputer yang sedang dipelajari menjalankan Windows 7 Professional dengan Service Pack SP1, yang berarti kita tahu artefak forensik yang mungkin kita temui dan mana yang mungkin kita butuhkan.

Di mana memulai pencarian kami? Ingat paradoks Jesse Kornblum: "Malware bisa bersembunyi, tetapi harus dijalankan." Awal yang baik mungkin adalah mencari mekanisme penguncian potensial dalam sistem yang memungkinkan program jahat untuk memulai kembali setelah komputer dinyalakan kembali.

Mari kita mulai dengan yang sederhana: ambil file registri NTUSER.DAT dari direktori pengguna (C: \ Users \% username% \) dengan tanggal modifikasi terbaru dan ekstrak data darinya menggunakan RegRipper yang sama. Jika kita ingin mendapatkan nomor rekaman file yang kita perlukan menggunakan fls dan findstr lagi, kita perlu menambahkan opsi –p ke fls - ini akan memungkinkan utilitas untuk menampilkan path lengkap ke file. Mengapa ini dibutuhkan? Faktanya adalah bahwa setiap pengguna memiliki file NTUSER.DAT dalam direktori, dan PERANGKAT LUNAK adalah satu-satunya untuk seluruh sistem, jadi dalam hal ini penting untuk mendapatkan nomor catatan dari file tertentu. Secara umum, menggunakan Sleuth Kit tidak diperlukan sama sekali, ada alat yang lebih nyaman, misalnya, FTK Imager , alat pengembangan AccessData gratis yang dapat digunakan tidak hanya untuk membuat salinan forensik, tetapi juga untuk memeriksa isinya:



Mari kita mulai dengan buah-buah yang menggantung rendah, yang disebut "tombol run" :



Jadi apa yang kita miliki? Bagian ini terakhir diubah pada 7 November, dan kami melihat bahwa ketika pengguna masuk, file apg.exe diluncurkan dari lokasi yang tidak standar. Mari kita lihat apa lagi yang bisa ditemukan di direktori b7mg81:



TeamViewer? Menarik. Mari kita lihat apg.exe lebih dekat - gunakan PPEE :



Sepertinya TeamViewer, mendaftar sebagai TeamViewer, jadi apakah itu TeamViewer? Sepertinya begitu. Tapi itu tidak sesederhana itu. Mari kita lihat tabel impor:



Jadi, msi.dll, di suatu tempat kami sudah melihat file ini, dan itu bukan C: \ Windows \ System32, tetapi direktori b7mg81 yang sama. Dilihat dari ukurannya, itu tidak ada hubungannya dengan msi.dll asli, yang berarti tersedia - Pembajakan Pesanan Pencarian DLL : sistem operasi mulai mencari perpustakaan yang diperlukan dari direktori saat ini, yang berarti bahwa alih-alih msi.dll yang sah, yang terletak akan dimuat di b7mg81.

File lain yang menarik adalah TeamViewer.ini :


Dan ini adalah counter-forensik: dilihat dari file konfigurasi, TeamViewer kami tidak menyimpan log apa pun, dan, tampaknya, digunakan sebagai RAT. Yah, tidak buruk. Sudah waktunya untuk mencari tahu apakah itu dimulai sama sekali.

Ada beberapa artefak di Windows yang mengindikasikan file yang dapat dieksekusi sedang berjalan. Mari kita lanjutkan bekerja dengan registri, kali ini dengan file SYSTEM . Untuk mengekstrak data darinya, Anda dapat menggunakan RegRipper lagi.

Kami tertarik dengan ControlSet001 \ Control \ Session Manager \ AppCompatCache. Di sini kita akan menemukan daftar file yang dapat dieksekusi dengan path ke mereka, tanggal modifikasi terakhir (sesuai dengan atribut $ STANDARD_INFORMATION), serta bendera yang menunjukkan apakah file itu diluncurkan atau tidak:



Hebat, file kami diluncurkan setidaknya sekali. Jadi, kami memiliki beberapa "pivot point", kami tahu bahwa pada 7 November TeamViewer muncul di drive komputer, yang tidak menyimpan log, dan kemungkinan besar tidak terlihat oleh pengguna, karena alih-alih perpustakaan yang sah itu memuat satu yang ada di dalamnya. katalog.

Sudah waktunya untuk mulai membangun garis waktu. Saya pikir itu sudah cukup dari apa yang bisa dibangun menggunakan Sleuth Kit. Mari kita mulai dengan utilitas fls yang sudah kita ketahui:

fls.exe -m “C: /” -o 718848 -r -z GMT D: \ RTM.E01> bodyfile.txt

Sekarang gunakan mactime untuk mengonversi file yang dihasilkan ke timeline:

mactime.pl -d -b bodyfile.txt> timeline.csv

Garis waktu sangat mudah untuk dianalisis di Penjelajah Timeline dari Eric Zimmerman . Timeline kami hanya akan mencakup acara sistem file. Jika Anda ingin menyertakan perubahan dalam registri, majalah, dll., Anda dapat menggunakan plaso. Secara pribadi, saya jarang menggunakannya, karena pemrosesan data membutuhkan waktu yang sangat lama, dan hasilnya seringkali sangat berlebihan.

Kembali ke garis waktu. Katalog b7mg81 dibuat pada 7 November 2018 pada 13:59:37:


Dan dua detik sebelum ini, file 21DA.tmp dibuat:


Jika Anda mencari checksumnya, misalnya, di VirusTotal, maka kami akan mendapatkan hasil yang cukup menarik:



Jelas, RAT kami sudah diurai dari file ini. Silakan:


Bahkan sebelumnya, direktori LocalDataNT dibuat dengan file yang cukup menarik di dalamnya. Lihatlah WinPrintSvc.exe, misalnya:


Remote Utilities adalah alat manajemen jarak jauh lain. Dan di sini ada file mencurigakan yang dibuat beberapa detik sebelumnya:


Periksa checksumnya:


Beberapa produk anti-virus segera mendeteksinya sebagai " RemoteAdmin ". Rupanya, dia adalah sumber Remote Utilities. Periksa apakah RAT yang terdeteksi diluncurkan. Kali ini kita akan menggunakan file registri AmCache.hve dari C: \ Windows \ AppCompat \ Program (RegRipper yang sama akan memungkinkan untuk mendapatkan data darinya dalam bentuk yang dapat dicerna):


Seperti yang Anda lihat dalam ilustrasi, AmCache memungkinkan kami untuk mendapatkan tidak hanya tanggal peluncuran pertama, tetapi juga checksum dari file tersebut.

Jadi, kami memiliki dua RAT, tetapi dari mana asalnya? Pertanyaan bagus! Jika Anda masih menggulir timeline, maka kita akan melihat jejak membuat direktori dan file yang agak mencurigakan:


Meskipun memiliki ekstensi yang aneh, fnbfdnja.hej memiliki tajuk yang akrab:


Apa yang akan ditunjukkan oleh pencarian checksum VirusTotal kepada kami? Dan inilah:


Seperti yang dapat Anda lihat di ilustrasi, beberapa perangkat lunak anti-virus mendeteksi file kita dengan sangat jelas - kita berurusan dengan RTM . VT dapat membantu kami lagi. Jika kita melihat tab "Hubungan", kita akan melihat ini:


Tampaknya kami menemukan pahlawan acara tersebut - ini adalah "Dokumen untuk October.exe". Atau mungkin tidak, nama yang terkait dengan file kami berbeda, walaupun checksumnya sama. Jadi, sekali lagi .exe, yang berarti kita perlu mencari jejak startup. Secara pribadi, saya sangat suka bekerja dengan registri, jadi sekali lagi saya akan menggunakan bantuan file NTUSER.DAT dan RegRipper yang sudah terkenal. Kali ini lihat UserAssist - dari situ kita mendapatkan nama dan jalur ke file, tanggal peluncuran terakhir mereka, serta jumlah peluncuran ini. File "Documents for October.exe" tidak terlihat, tetapi file lain terlihat:

C: \ Users \% username% \ Desktop \ Documents environment.exe

Ya, sepertinya itulah yang kita butuhkan. Benar, ada masalah kecil - tidak ada file di tempat yang tepat. Kembali ke garis waktu. Setelah membuat file fnbfdnja.hej, inilah yang terjadi:


File di direktori Temp mungkin milik RTM, tetapi kami tidak tertarik pada mereka. Kami tertarik pada file $ R6K21RQ.exe dan $ I6K21RQ.exe. Seperti inilah file-file yang ditempatkan di Recycle Bin - yang pertama berisi data itu sendiri, yang kedua berisi metadata. Jika kita melihat isi $ I6K21RQ.exe, kita segera melihat path ke file yang diinginkan - "Documents environment.exe".

Saatnya untuk melihat apa yang VT akan tawarkan kepada kami untuk checksum-nya:


Kami melihat deteksi sudah akrab bagi kami - "RTM". Ternyata, checksum dari file kami bertepatan dengan checksum "Documents for October.exe". Selain itu, VT mengetahui beberapa file lagi dengan checksum yang sama:


Akan menyenangkan untuk mendapatkan semacam indikator jaringan kompromi. Kami tidak memiliki dump memori, lalu lintas jaringan juga, apa yang harus saya lakukan? Tukar file! Tetapi bagaimana cara menemukan jarum di tumpukan jerami? Dan di sini VT juga akan sedikit membantu kita, kali ini tab Behavior :


Kedengarannya seperti C2, kan? Mari kita lihat apakah ada yang seperti ini di file swap kami (pagefile.sys). Tentu saja ada:


Jadi, kami mengonfirmasi bahwa file kami berinteraksi dengan 185.141.61 [.] 246. Mari kita coba cari lebih banyak indikator jaringan. Salah satu RAT adalah TeamViewer, kami akan mencoba menemukan sesuatu yang mirip dengan ID-nya. Untuk ini, Anda dapat, misalnya, menggunakan ekspresi reguler:


Hebat, kami memiliki indikator jaringan lain - 195.123.219 [.] 87. Tentu saja, menukar file tidak hanya cocok untuk menemukan indikator jaringan. Jika kita kembali ke tab Perilaku di VT, kita akan melihat bahwa file kita membuat tugas di penjadwal. Jika kita melihat baris "fnbfdnja.hej", kita menemukan ini:


Tugas yang dibuat meluncurkan fnbfdnja.hej melalui rundll32.exe.

Nah, saatnya untuk mengakhiri. Saatnya menentukan dari mana file "Documents environment.exe" berasal. Kita sudah tahu bahwa ini adalah RTM, dan karena ini RTM, vektor infeksi yang paling mungkin adalah email phishing. Dalam hal ini, korban menggunakan Microsoft Outlook, jadi kami menemukan file .ost dengan surat di tempat biasa, dan di dalamnya email phishing yang sama:


Namun, saya tidak ingin menyelesaikan posting kami tentang ini, tetapi pada artefak lain yang menarik. Jika kita kembali ke file NTUSER.DAT dan melihat nilai parameter "Shell" di bagian Perangkat Lunak \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon, maka alih-alih dari "explorer.exe" yang biasa kita akan melihat ini:


Dan ini berarti bahwa setelah pengguna masuk alih-alih meluncurkan Explorer, sistem akan dimatikan, dan dengan itu menyelesaikan artikel ini.

Source: https://habr.com/ru/post/id449100/


All Articles