Jika Anda menggunakan Kodi, Anda mungkin telah memperhatikan bahwa repositori addon XvBMC Belanda populer telah
ditutup karena pelanggaran hak cipta. Setelah itu, kami menemukan bahwa repositori itu diam-diam digunakan dalam kampanye penambangan kripto yang dimulai pada Desember 2017. Ini adalah insiden kedua yang diketahui terkait dengan penyebaran malware melalui add-on Kodi, dan kasus pertama penambangan crypto menggunakan platform ini. Menariknya, binari yang sesuai dengan OS yang digunakan (Windows atau Linux) dikirim ke pengguna Kodi.

Bagi mereka yang tidak terbiasa dengan platform Kodi: media player tidak mengirimkan konten; pengguna secara mandiri memperluas fungsionalitas produk dengan menginstal add-on dari repositori resmi dan situs pihak ketiga. Beberapa add-on tidak resmi memungkinkan Anda untuk mengakses konten bajakan, itulah sebabnya Kodi ambigu oleh publik.
Pelanggaran hak cipta Kodi telah
dikaitkan dengan penyebaran malware, tetapi, dengan pengecualian
insiden dengan modul DDoS sebagai bagian dari add-on yang populer, tidak ada bukti yang disajikan.
Kampanye
Kami menemukan bahwa malware yang ditemukan di XvMBC pertama kali muncul di repositori Bubbles dan Gaia yang populer masing-masing pada bulan Desember 2017 dan Januari 2018. Dari jumlah tersebut, serta dengan memperbarui repositori lain dan bangunan siap pakai, malware telah menyebar ke seluruh ekosistem Kodi.
Malvar memiliki arsitektur multi-tahap. Penulis mengambil langkah-langkah sehingga asal muatan akhir (cryptominer) tidak dapat dilacak ke addon jahat. Penambang bekerja di bawah Windows dan Linux; penambang Monero (XMR). Versi untuk Android atau macOS belum diamati di alam bebas.
Infeksi dilakukan berdasarkan salah satu dari tiga skema:
1. Korban menambahkan URL repositori berbahaya ke Kodi untuk mengunduh beberapa add-on. Pengaya berbahaya dipasang saat memperbarui pengaya Kodi.
2. Korban menginstal Kodi build yang sudah jadi yang mencakup URL repositori berbahaya. Pengaya berbahaya dipasang saat memperbarui pengaya Kodi.
3. Korban menginstal Kodi build yang sudah jadi dengan add-on berbahaya, tetapi tanpa tautan ke repositori untuk memperbarui. Komputer terganggu, meskipun addon malware tidak diperbarui. Namun, jika cryptominer diinstal, ia disimpan dalam sistem dan dapat menerima pembaruan.
Menurut telemetri ESET, 5 negara teratas dengan tingkat aktivitas ancaman tertinggi adalah AS, Israel, Yunani, Inggris, dan Belanda. Adalah logis, karena negara-negara ini adalah salah satu
pemimpin dalam hal volume lalu lintas di add-on Kodi. Penjelasan lain yang mungkin adalah popularitas di negara-negara majelis ini dengan repositori jahat (seperti XvBMC di Belanda).
Gambar 1. Distribusi penambang cryptoSaat ini, repositori tempat distribusi penambang crypto dimulai, tidak berfungsi (Bubbles), atau tidak lagi mendistribusikan kode berbahaya (Gaia). Namun, korban yang perangkatnya terinfeksi penambang crypto masih berisiko. Selain itu, malware masih ada di repositori Kodi lainnya dan beberapa rakitan yang sudah jadi, yang penulisnya kemungkinan besar tidak menyadarinya.
Garis waktu
17 Desember 2017 - repositori Bubbles menerbitkan pembaruan berbahaya pertamanya
4 Januari 2018 - pembaruan berbahaya pertama di repositori Gaia
14 Januari - addon jahat pertama di repositori Bubbles
Pertengahan Januari - repositori Bubbles ditutup, pengguna diarahkan ke Gaia
28 Januari - ESET menemukan penambang kripto
28 Januari - pertengahan April - penambang crypto secara teratur menerima pembaruan
11 Februari, 6 Maret 21 Maret - pembaruan tambahan malware
26 April - Repositori Gaia menghapus semua konten, versi baru tidak lagi mendistribusikan addon berbahaya
Pertengahan Agustus - pesan tentang menutup repositori XvBMC - sumber kedua add-on berbahaya
Analisis teknis
Bagaimana cara kerjanya
Ketika seorang korban menambahkan repositori berbahaya ke Kodi, ia (repositori) menyimpan add-
script.module.simplejson
- cocok dengan nama add-on yang sah yang digunakan oleh banyak add-on lainnya. Perbedaannya adalah bahwa di repositori lain hanya ada
script.module.simplejson
versi 3.4.0, dan yang jahat - versi 3.4.1.
Kodi menggunakan nomor versi untuk mendeteksi pembaruan, sehingga semua pengguna dengan fitur pembaruan otomatis diaktifkan (diaktifkan secara default) mendapatkan
script.module.simplejson
versi 3.4.1 dari repositori berbahaya.
Satu-satunya bagian dari
script.module.simplejson
versi 3.4.1 yang telah diubah dari versi 3.4.0 adalah metadata. File
addon.xml
berisi baris tambahan:

Dia memberi tahu Kodi tentang kemampuan untuk mengunduh dan menginstal add-on script.module.python.requests versi 2.16.0 dan lebih tinggi. Add-on diproses hanya oleh repositori berbahaya. Ini adalah modifikasi dari addon
script.module.requests
yang sah, yang berisi kode Python berbahaya tambahan.
Kode ini memuat file biner Windows atau Linux, jika perlu, dan menjalankannya. Eksekusi adalah bootloader yang mengekstrak dan mengeksekusi payload final - cryptominer. Jika instalasi penambang berhasil, kode Python melanjutkan ke tahap penghapusan sendiri dan menghapus sendiri.
Gambar 2. Diagram alir eksekusi perangkat lunakKode python
Dalam sampel yang dianalisis, kode berbahaya yang dikaburkan terletak di
script.module.python.requests\lib\requests\packages\urllib3\connectionpool.py
koneksipool.py, baris 846-862.
Gambar 3. Malware dikaburkan di connectionpool.pySetelah deobfusi dan dengan komentar, kode terlihat lebih mudah dibaca, seperti yang ditunjukkan pada gambar di bawah ini.
Gambar 4. Kode berbahaya setelah deobfuscation (dengan komentar analis)Penulis kode jelas akrab dengan ekosistem Kodi dan arsitektur tambahan. Script menentukan OS mana yang berfungsi (hanya Windows dan Linux yang didukung, Android dan macOS masih diabaikan), terhubung ke server C&C-nya dan mengeksekusi file biner yang sesuai - modul bootloader.
File biner Windows ditulis ke
C:\Users\[username]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\TrustedInstaller.exe
, Linux ke
/tmp/systems/systemd
.
Setelah mengekstrak dan menjalankan modul biner bootloader, skrip Python - di sini
connectionpool.py
- memulai prosedur penghapusan-sendiri. Seperti dapat dilihat pada Gambar 4, kode berbahaya disorot dengan spidol khusus # - + - dan # -_- #. Menjalankan kode setelah berhasil mengeksekusi file biner bootloader membuka file, menemukan marker ini dan menghapusnya, serta semua yang ada di antaranya. File bersih kemudian disimpan. Akibatnya, pemasangan cryptominer bermasalah untuk melacak addon Kodi ini.
Gambar 5. Penghapusan sendiri dalam kode Python (dengan komentar analis)Cryptominer dapat dieksekusi
Modul bootloader (file EXE 64-bit untuk Windows, file ELF 64-bit untuk Linux), diekstraksi menggunakan kode Python, berisi konfigurasi cryptominer terenkripsi dan tautan unduhan untuk payload tahap kedua - file cryptominer biner.
Bootloader biner mengekstrak payload tahap kedua untuk OS (file cryptominer biner untuk GPU yang berbeda dan modul peluncur / pembaruan berbahaya) dalam arsip ZIP yang dilindungi kata sandi. Binari dikompilasi untuk Windows 64-bit dan Linux, mereka didasarkan pada perangkat lunak penambangan XMRStak open source.
Konfigurasi penambang adalah sebagai berikut:
{"monero":{"default":{"wallet":"49WAk6TaCMX3HXN22nWPQAfBjP4J3ReUKg9tu3FoiPugcJs3fsnAvyGdrC41HZ4N6jcHEiwEGvH7z4Sn41PoZtLABFAVjm3","password":"","name":"","email":"","weight":1,"format":{"rig":"","address":"%w%.%n%/%e%","password":"%p%"}},"pools":[{"host":"xmr-us-east1.nanopool.org:14444"},{"host":"xmr-eu1.nanopool.org:14444"},{"host":"xmr-asia1.nanopool.org:14444"}]}}
Cara mendeteksi infeksi
Pengguna pemutar media Kodi untuk Windows atau Linux yang memasang add-on dari repositori pihak ketiga atau rakitan siap pakai dapat berpartisipasi dalam penambangan yang mendukung operator kampanye ini.
Untuk memeriksa kompromi perangkat, Anda harus memindai dengan perangkat lunak antivirus. Untuk Windows, Anda dapat menggunakan
ESET Online Scanner gratis, untuk Linux,
ESET NOD32 Antivirus gratis
untuk perangkat lunak uji coba
Linux Desktop .
Pengguna versi produk ESET saat ini sudah dilindungi. Produk ESET mendeteksi ancaman seperti Win64 / CoinMiner.II dan Win64 / CoinMiner.MK di Windows, Linux / CoinMiner.BC, Linux / CoinMiner.BJ, Linux / CoinMiner.BK dan Linux / CoinMiner.CU di Linux.
Kesimpulan
Sebagian besar repositori yang awalnya mendistribusikan penambang di ekosistem Kodi ditutup atau dibersihkan. Namun, banyak perangkat yang masih terinfeksi. Seperti yang Anda lihat pada gambar di bawah ini, operator kampanye terus mendapatkan penghasilan.
Gambar 6. Penghasilan operator penambang cryptoMenurut statistik dompet operator-Monero yang disediakan oleh Nanopool, pada saat penulisan posting, setidaknya 4.774 komputer terinfeksi dan 62,57 XMR diekstraksi (5.700 euro atau 6.700 dolar).
Insiden ini menarik karena merupakan malware kedua dan penambang crypto pertama yang menyebar melalui ekosistem Kodi. Selain itu, kampanye tersebut menggunakan teknik kompromi yang tidak biasa. Para penulis menggunakan sistem tambahan Kodi, yang kompatibel dengan sebagian besar sistem operasi, untuk menargetkan malware di Linux dan Windows.
Mungkin, operator bisa lebih banyak berkompromi dengan OS. Atau, mereka dapat membuat versi penambang mereka sendiri untuk platform ini atau memberikan muatan yang disesuaikan (misalnya, kurang intensif energi untuk perangkat dengan daya baterai rendah).
Ketika langkah-langkah keamanan OS diperketat, penambahan perangkat lunak populer akan menjadi target yang lebih populer bagi penjahat cyber. Kami telah melihat insiden serupa sebelumnya dengan makro Visual Basic di aplikasi Microsoft Office. Bukan fakta bahwa pengaya Kodi akan menjadi "VBA baru," tetapi insiden ini menunjukkan perkembangan seperti itu.
Indikator kompromi
Kodi Malicious Add-ons
Karena repositori asli dengan add-on jahat (Bubbles dan Gaia) telah dihapus, di bawah ini adalah tautan ke salinan mirror dari repositori yang masih berisi kode penambang, serta contoh rakitan Kodi berbahaya yang dipilih secara acak.
Penting untuk dicatat bahwa pemilik repositori cenderung mendistribusikan add-ons jahat tanpa sadar.
Gelembung Cermingithub[.]com/yooperman17/trailerpark/blob/master/repository/repository.bubbles.3/repository.bubbles.3-4.2.0[.]zip
github[.]com/yooperman17/trailerpark/blob/master/repository/common/script.module.urllib.3/script.module.urllib.3-1.22.3[.]zip
Cermin Gaiagithub[.]com/josephlreyes/gaiaorigin/blob/master/common/script.module.python.requests/script.module.python.requests-2.16.1[.]zip
github[.]com/josephlreyes/gaiaorigin/blob/master/common/script.module.simplejson/script.module.simplejson-3.4.1[.]zip
File berbahaya sebelumnya tersedia di repositori XvBMCgithub[.]com/XvBMC/repository.xvbmc/tree/b8f5dd59961f2e452d0ff3fca38b26c526c1aecb/Dependencies/script.module[.]simplejson
github[.]com/XvBMC/repository.xvbmc/tree/b8f5dd59961f2e452d0ff3fca38b26c526c1aecb/Dependencies/script.module.python[.]requests
github[.]com/XvBMC/repository.xvbmc/blob/b8f5dd59961f2e452d0ff3fca38b26c526c1aecb/Dependencies/zips/script.module.python.requests/script.module.python.requests-2.16.3[.]zip
github[.]com/XvBMC/repository.xvbmc/blob/b8f5dd59961f2e452d0ff3fca38b26c526c1aecb/Dependencies/zips/script.module.simplejson/script.module.simplejson-3.4.1[.]zip
Contoh membangun Kodi berbahayaarchive[.]org/download/retrogamesworld7_gmail_Kodi_20180418/kodi[.]zip
archive[.]org/download/DuggzProBuildWithSlyPVRguideV0.3/DuggzProBuildWithSlyPVRguideV0.3[.]zip
ukodi1[.]xyz/ukodi1/builds/Testosterone%20build%2017[.]zip
URL Server C & C:
openserver[.]eu/ax.php
kodinet.atspace[.]tv/ax.php
kodiupdate.hostkda[.]com/ax.php
kodihost[.]rf.gd/ax.php
updatecenter[.]net/ax.php
stearti.atspace[.]eu/ax.php
mastercloud.atspace[.]cc/ax.php
globalregistry.atspace.co[.]uk/ax.php
meliova.atwebpages[.]com/ax.php
krystry.onlinewebshop[.]net/ax.php
Modul Bootloader (Windows)
openserver[.]eu/wib
kodinet.atspace[.]tv/wib
kodiupdate.hostkda[.]com/wib
kodihost.rf[.]gd/wib
updatecenter[.]net/wib
bitbucket[.]org/kodiserver/plugin.video.youtube/raw/HEAD/resources/lib/wib
gitlab[.]com/kodiupdate/plugin.video.youtube/raw/master/resources/lib/wib
www.dropbox[.]com/s/51fgb0ec9lgmi0u/wib?dl=1&raw=1
Modul Bootloader (Linux)
openserver[.]eu/lib
kodinet.atspace[.]tv/lib
kodiupdate.hostkda[.]com/lib
kodihost.rf[.]gd/lib
updatecenter[.]net/lib
bitbucket[.]org/kodiserver/plugin.video.youtube/raw/HEAD/resources/lib/lib
gitlab[.]com/kodiupdate/plugin.video.youtube/raw/master/resources/lib/lib
www.dropbox[.]com/s/e36u2wxmq1jcjjr/lib?dl=1&raw=1
File Biner Cryptominer (Windows)
updatecenter[.]net/wub
openserver[.]eu/wub
glocato.atspace[.]eu/wub
oraceur.hostkda[.]com/wub
dilarti.1free-host[.]com/wub
utudict.vastserve[.]com/wub
encelan.atspace[.]cc/wub
Cryptominer Binaries (Linux)
updatecenter[.]net/lub
openserver[.]eu/lub
glocato.atspace[.]eu/lub
oraceur.hostkda[.]com/lub
dilarti.1free-host[.]com/lub
utudict.vastserve[.]com/lub
encelan.atspace[.]cc/lub
Hash Addons Berbahaya
B8FD019D4DAB8B895009B957A7FEBAEFCEBAFDD1
BA50EAA31441D5E2C0224B9A8048DAF4015735E7
717C02A1B040187FF54425A64CB9CC001265C0C6
F187E0B6872B096D67C2E261BE41910DAF057761
4E2F1E9E066D7D21CED9D690EF6119E59CF49176
53E7154C2B68EDBCCF37FB73EEB3E042A1DC7108
FF9E491E8E7831967361EDE1BD26FCF1CD640050
3CC8B10BDD5B98BEA94E97C44FFDFB1746F0C472
389CB81D91D640BA4543E178B13AFE53B0E680B5
6DA595FB63F632EE55F36DE4C6E1EB4A2A833862
9458F3D601D30858BBA1AFE1C281A1A99BF30542
B4894B6E1949088350872BDC9219649D50EE0ACA
79BCC4F2D19A394DD2DB2B601208E1D1EA57565B
AAAEDE03F6C014CEE8EC0D9C0EA4FC7B0E67DB59
C66B5ADF3BDFA87B0731512DD2654F4341EBAE5B
F0196D821381248EB8717F47C70D8C235E83A12E
7CFD561C215DC04B702FE40A199F0B60CA706660
ESET mendeteksi kode Python berbahaya sebagai Python / CoinMiner.W.
Modul-modul cryptominers dan bootloader (Windows)
08406EB5A8E75F53CFB53DB6BDA7738C296556D6
2000E2949368621E218529E242A8F00DC8EC91ED
5B1F384227F462240178263E8F2F30D3436F10F5
B001DD66780935FCA865A45AEC97C85F2D22A7E2
C6A4F67D279478C18BE67BEB6856F3D334F4AC42
EE83D96C7F1E3510A0D7D17BBF32D5D82AB54EF3
ESET mendeteksi modul cryptominer dan bootloader sebagai Win64 / CoinMiner.II dan / atau Win64 / CoinMiner.MK. Telemetri kami menunjukkan lebih dari 100 hash yang berbeda untuk nama deteksi.
Modul-modul cryptominers dan bootloader (Linux)
38E6B46F34D82BD23DEACD23F3ADD3BE52F1C0B6
90F39643381E2D8DFFF6BA5AB2358C4FB85F03FC
B9173A2FE1E8398CD978832339BE86445ED342C7
D5E00FB7AEA4E572D6C7C5F8D8570DAB5E1DD156
D717FEC7E7C697D2D25080385CBD5C122584CA7C
DF5433DC7EB272B7B837E8932E4540B216A056D8
ESET mendeteksi versi Linux modul crypto miner dan bootloader seperti Linux / CoinMiner.BC, Linux / CoinMiner.BJ, Linux / CoinMiner.BK dan Linux / CoinMiner.CU.