RANGKUMAN WEBINAR CSIRT-TALK 2
Radnext Digital Indonesia
BEDAH RANSOMWARE PEMBOBOL PDN
Reverse Engineering
Membongkar sesuatu (barang, proses, software, dsb)
Contoh: makanan bisa direverse engineer resepnya
Mesin pabrik bisa direverse engineer kembali menjadi blueprint
Butuh keahlian/pengetahuan "forward engineering" untuk bisa reverse engineering
RE bisa digunakan untuk mencari bug pada program dan juga sistem operasi
Setelah bug ditemukan, diciptakan exploit (program) untuk memanfaatkan celah
Harga exploit mulai ratusan USD hingga jutaan USD
Praktisnya seperti apa?
- Menggunakan hex editor
- Melihat disassembly
- Melihat dekompilasi
- Melakukan debugging
Apa itu ransomware?
- Software yang bisa mengenkrip file, ditujukan untuk meminta tebusan
- Malware adalah software jahat apapun, Ransomware adalah malware yang meminta ransom
- Jika datanya diancam akan disebar, jadi double-extortion
Ransomware Sederhana:
- Ransomware paling sederhana: masuk ke komputer orang lain, zip semua file dengan password, hapus file lama, lalu tinggalkan catatan di README bagaimana mengirim uang tebusan dan harus menghubungi email/alamat web mana untuk tebusannya
- Di sini "software untuk mengenkrip" nya adalah WinZip/7-Zip/WinRAR, "key"-nya adalah password, dan "zip"-nya adalah file yang terenkrip
- Bedanya dengan ransomware yang ada di luar sana: enkripsinya otomatis, tiap file hasilnya memakai ekstensi unik
IOC
Ketika masa COVID, banyak informasi yang menjelaskan:
Jika kamu punya gejala ini, kamu mungkin kena COVID
Dan juga info mengenai bagaimana COVID menular supaya bisa dicegah
Jika suatu sistem kena hack, biasanya IOC (Indicator of Compromise) akan dishare, supaya yang lain bisa tahu jika kena hal yang sama.
Ada beberapa istilah:
- Hash sebuah file adalah fingerprint unik sebuah file. Dua file yang hashnya sama dijamin (hampir selalu) pasti file yang sama
- Tapi malware bisa mengubah dirinya (polimorfik), jadi hash ini tidak selalu sama
- YARA adalah rule untuk mendeskripsikan sebuah malware (jika mengandung string ini atau byte-byte ini, maka kemungkinan adalah malware)
- Kadang malware melakukan koneksi ke server dengan IP tertentu
Apa yang dilakukan ketika mendapatkan IOC?
- Tujuan IOC adalah supaya pemilik sistem lain bisa memasukkan hash dan info lain (misalnya rule YARA) ke dalam tool security
- Administrator jaringan bisa memblok IP tertentu agar malware tidak bekerja
Sample: ransomware dan hasil enkripsi ransomware
Jika kita mengenkrip file, maka ada "software" yang dipakai untuk mengenkrip dan ada hasil enkripsinya
Yang bisa dianalisis biasanya adalah software-nya, dalam kasus ini ransomware-nya
Jika diberi sampel hasilnya saja, maka mungkin bisa ditebak perilaku malwarenya, tapi semuanya hanya tebakan
Yang saya minta adalah sampel exact malwarenya, yang mana yang menyerang PDN, tapi tidak dapat ini
Mencari File
Hash kedua file bisa dicari di situs sharing malware:
- win.exe sudah ada sejak sebelum peristiwa PDN (ada "first seen" di situs sharing malware)
- win_old.exe tidak ketemu, sampai beberapa hari kemudian baru ada yang mengupload sampelnya
- dua-duanya adalah varian lockbit
Note: tidak semua situs sharing malware punya sampel yang lengkap, dan kadang perlu beberapa hari sampelnya sampai diindeks Google.
Analisi Malware
- Cara termudah adalah dengan tool sandbox, malware dijalankan, lalu apa yang terjadi dicatat
- Contoh situs: https://tria.ge/
- Cara lain adalah dengan melihat kode malwarenya, ini yang lebih sulit (reverse engineering)
Cara pertama ini bisa rawan salah, misalnya Windows/Edge, aplikasi lain melakukan update, malah bisa disangka IP milik malware
Ketika dijalankan, malware menghasilkan README, dan di dalamnya:
- ada URL lockbit
- ada encryption ID (untuk tujuan chatting dengan group ransomware)
- saya masuk ke websitenya, dan ternyata benar, di sini ada permintaan 8 juta USD
Lockbit
Group ransomware yang sangat sukses. Group ini dijalankan seperti perusahaan (ada sales, support, human resource, dsb)
Group ini sudah ditakedown, dan yang dulu pernah jadi korban, keynya berhasil direcover oleh tim gabungan internasional
Sayangnya builder ransomware ini sudah bocor.
Builder Lockbit
Software builder ini bisa dikonfigurasi (dengan mengedit file teks config.json), lalu akan menghasilkan 2 file executable:
locker.exe
(akan disebar ke target, bisa dijalankan manual dengan masuk ke sistem target, atau menipu target menjalankan file ini)unlocker.exe
(akan diberikan ke target jika sudah membayar)
Ini memakai sistem "public key cryptography":
- jika punya locker tidak bisa membuat unlocker, tapi sebaliknya, jika punya unlocker, bisa membuat locker.
Lockbit ini ada banyak variannya, sudah sangat aman, dalam arti: tidak punya kelemahan.
Mereka pernah mengadakan bounty: kalau menemukan kelemahan lockbit, maka yang melaporkan ke group itu akan dibayar
Lockbit bisa dijalankan, dan akan berjalan di latar belakang, bisa ditinggal, dan ada opsi menghapus diri sendiri atau tidak. Ini sering gagal menghapus diri sendiri, jadi jejaknya mudah didapat, IOC bisa didapatkan.
Babuk: perlu masuk dan jalankan manual, setelah itu bisa dihapus. Kemungkinan besar tidak ditemukan jejak enkriptor ini
Ada kemungkinan ini bisa direcover dengan skill forensik yang cukup.
Kelemahan Lockbit:
- Lockbit biasanya tidak mengenkrip seluruh file, tapi lompat-lompat supaya cepat
- Enkripsi yang dipakai adalah Salsa20
- Nama file juga bisa dienkrip (tergantung konfigurasi .json), ini kenapa perlu sampel eksak
- Tiap file dienkrip dengan key yang berbeda
- Nama file asli disimpan di akhir file, dan key file juga di akhir file
- Nama asli dan key ini dienkrip memakai key yang berbeda tiap 1000 file
- Key per 1000 file ini dienkrip dengan public key cryptography (akan dijelaskan lebih lanjut nanti)
BABUK
Group ransomware ini merilis suorce codenya karena pembuatnya kena kanker terminal
Hasil reverse engineering dekriptor cocok dengan source code aslinya
Kami tidak mendalami lagi, karena ada peringatan: jika dibantu pihak ketiga, maka file akan disebar/leak di internet
Kelemahan enkripsi Lockbit (dekrip tanpa key):
- Jika ada file yang namanya pendek (misalnya: backup.zip)
- Dan ada file yang namanya panjang (misalnya: “Informasi Klaim – Asuransi Mikro Hospital Cash Plan 5 Diseases (Juli 2024).txt”)
- Dan keduanya dienkrip dengan key yang sama (misalnya filenya sama-sama ada di Documents)
- Maka file backup.zip bisa didekrip isinya, karena keynya bisa ditemukan
Bug enkriptor babuk
Setelah review codenya:
- tidak memiliki header/checksum atau apapun, selain mengandalkan bahwa extensionnya adalah
.encrptd
- kadang file direname
.encrptd
tapi tidak dienkrip (bisa membuat bingung, seolah corrupt ketika didekrip) - jika enkriptor crash, maka file akan corrupt
Recovery butuh waktu:
- Tiap file perlu dibackup
- Decrypt filenya (tidak multithreaded, per file)
- perlu ditest, discan, dipastikan tidak ada malwarenya
- mungkin data perlu digabungkan dengan data aplikasi yang sekarang ini berjalan
Recovery Babuk tanpa key:
- Babuk hanya menimpa 520MB pertama
- 520MB pertama umumnya hanya file sistem operasi
- Data (database, file-file) seharusnya aman
- Dalam banyak kasus, recovery dalam hitungan menit, tapi ada proses copy data yang bisa makan waktu lama
`
Comments
Post a Comment