Jalan keluar Anda, grafik: bagaimana kami tidak menemukan grafik jaringan yang baik dan membuat grafik kami sendiri



Menyelidiki kasus yang berkaitan dengan phishing, botnet, transaksi penipuan dan kelompok peretas kriminal, pakar Grup-IB telah menggunakan analisis grafik selama bertahun-tahun untuk mengidentifikasi semua jenis koneksi. Kasing yang berbeda memiliki susunan datanya sendiri, algoritme identifikasi koneksi mereka sendiri, dan antarmuka yang dirancang untuk tugas tertentu. Semua alat ini merupakan pengembangan internal Grup-IB dan hanya tersedia untuk karyawan kami.

Analisis grafik infrastruktur jaringan ( grafik jaringan ) adalah alat internal pertama yang kami bangun ke dalam semua produk publik perusahaan. Sebelum membuat grafik jaringan kami sendiri, kami menganalisis banyak perkembangan serupa di pasar dan tidak menemukan satu pun produk yang akan memuaskan kebutuhan kami sendiri. Pada artikel ini kita akan berbicara tentang bagaimana kita membuat grafik jaringan, bagaimana menggunakannya dan kesulitan apa yang kita temui.

Dmitry Volkov, CTO Group-IB dan Kepala Cyber ​​Intelligence

Apa yang dapat dilakukan oleh grafik jaringan Grup-IB?


Investigasi


Sejak berdirinya Group-IB pada tahun 2003 hingga saat ini, identifikasi, deanon, dan pertanggungjawaban penjahat cyber telah menjadi prioritas utama dalam pekerjaan kami. Tidak ada investigasi serangan cyber yang dapat dilakukan tanpa analisis infrastruktur jaringan penyerang. Di awal perjalanan kami, itu adalah "pekerjaan manual" yang agak melelahkan untuk menemukan hubungan yang dapat membantu mengidentifikasi penjahat: informasi tentang nama domain, alamat IP, sidik jari digital server, dll.

Sebagian besar penyerang mencoba untuk bertindak secara anonim di jaringan. Namun, seperti semua orang, mereka melakukan kesalahan. Tugas utama analisis ini adalah untuk menemukan proyek-proyek bersejarah para penyerang "putih" atau "abu-abu" yang bersinggungan dengan infrastruktur jahat yang digunakan dalam insiden aktual yang sedang kami selidiki. Jika mungkin untuk mendeteksi "proyek putih", maka menemukan penyerang, sebagai suatu peraturan, menjadi tugas yang sepele. Dalam kasus "abu-abu," dibutuhkan lebih banyak waktu dan upaya untuk mencari, karena pemiliknya mencoba menganonimkan atau menyembunyikan data pendaftaran, tetapi kemungkinannya tetap cukup tinggi. Sebagai aturan, pada awal kegiatan kriminal mereka, penyerang kurang memperhatikan keamanan mereka sendiri dan membuat lebih banyak kesalahan, sehingga semakin dalam kita bisa terjun ke dalam sejarah, semakin tinggi peluang investigasi yang berhasil. Itulah sebabnya grafik jaringan dengan riwayat yang baik adalah elemen yang sangat penting dari penyelidikan semacam itu. Sederhananya, semakin dalam data historis yang dimiliki perusahaan, semakin baik grafiknya. Misalkan sebuah kisah 5 tahun dapat membantu menyelesaikan, secara kondisional, 1-2 dari 10 kejahatan, dan sebuah kisah 15 tahun memberi peluang untuk menyelesaikan semua sepuluh.

Mendeteksi phishing dan penipuan


Setiap kali kami menerima tautan mencurigakan ke sumber daya phishing, penipuan, atau bajakan, kami secara otomatis membuat grafik sumber daya jaringan terkait dan memeriksa semua host yang ditemukan untuk konten yang serupa. Ini memungkinkan Anda menemukan kedua situs phishing lama yang aktif tetapi tidak dikenal, dan yang baru yang disiapkan untuk serangan di masa mendatang, tetapi belum digunakan. Contoh mendasar yang cukup umum: kami menemukan situs phishing di server dengan hanya 5 situs. Dengan memeriksa masing-masing, kami juga menemukan konten phishing di situs lain, yang berarti kami dapat memblokir 5 alih-alih 1.

Pencarian Backend


Proses ini diperlukan untuk menetapkan di mana server jahat sebenarnya berada.
99% toko kartu, forum peretasan, banyak sumber daya phishing, dan server jahat lainnya bersembunyi di balik server proxy mereka sendiri dan proksi layanan yang sah, misalnya, Cloudflare. Mengetahui tentang backend nyata sangat penting untuk investigasi: diketahui penyedia hosting tempat Anda dapat menghapus server, menjadi mungkin untuk membangun koneksi dengan proyek berbahaya lainnya.

Misalnya, Anda memiliki situs phishing untuk mengumpulkan data kartu bank yang memutuskan ke alamat IP 11/11/11/11, dan alamat toko kartu yang memutuskan ke alamat IP 22.22.22.22. Selama analisis, ternyata situs phishing dan toko kartu memiliki alamat IP backend yang sama, misalnya, 33.33.33.33. Pengetahuan ini memungkinkan Anda untuk membangun tautan antara serangan phishing dan toko kartu di mana, mungkin, mereka menjual data kartu bank.

Korelasi acara


Ketika Anda memiliki dua pemicu yang berbeda (misalnya, pada IDS) dengan malware yang berbeda dan server yang berbeda untuk mengendalikan serangan, Anda akan menganggapnya sebagai dua peristiwa independen. Tetapi jika ada koneksi yang baik antara infrastruktur jahat, maka menjadi jelas bahwa ini bukan serangan yang berbeda, tetapi tahap satu, serangan multi-tahap yang lebih kompleks. Dan jika salah satu peristiwa sudah dikaitkan dengan kelompok penyerang, maka yang kedua juga dapat dikaitkan dengan kelompok yang sama. Tentu saja, proses atribusi jauh lebih kompleks, jadi perlakukan tulisan sebagai contoh sederhana.

Indikator pengayaan


Kami tidak akan terlalu memperhatikan hal ini, karena ini adalah skenario paling umum untuk menggunakan grafik dalam keamanan dunia maya: Anda memberikan satu indikator ke input, dan Anda mendapatkan berbagai indikator terkait di output.

Deteksi pola


Identifikasi pola sangat penting untuk perburuan yang efektif. Grafik tidak hanya memungkinkan menemukan elemen terkait, tetapi juga mengungkapkan properti umum yang melekat pada kelompok peretas tertentu. Mengetahui fitur unik semacam itu memungkinkan Anda mengenali infrastruktur penyerang bahkan pada tahap persiapan dan tanpa bukti mengkonfirmasi serangan, seperti email phishing atau malware.

Mengapa kami membuat grafik jaringan kami sendiri?


Saya ulangi bahwa kami mempertimbangkan solusi dari pemasok yang berbeda sebelum kami sampai pada kesimpulan bahwa kami perlu mengembangkan alat kami sendiri yang dapat melakukan apa yang tidak ditemukan dalam produk yang ada. Butuh beberapa tahun untuk membuatnya, di mana kami telah benar-benar mengubahnya lebih dari sekali. Namun, terlepas dari periode pengembangan yang panjang, kami masih belum menemukan satu pun analog yang akan memenuhi persyaratan kami. Dengan menggunakan produk kami sendiri, kami dapat memecahkan hampir semua masalah yang kami temukan dalam grafik jaringan yang ada. Di bawah ini kami mempertimbangkan masalah ini secara rinci:

MasalahSolusi
Kurangnya penyedia dengan koleksi data yang berbeda: domain, DNS pasif, SSL pasif, catatan DNS, port terbuka, menjalankan layanan pada port, file yang berinteraksi dengan nama domain dan alamat IP. Penjelasan. Pemasok biasanya menyediakan jenis data terpisah, dan untuk mendapatkan gambaran lengkap, Anda perlu membeli langganan dari semua orang. Namun demikian, tidak selalu mungkin untuk mendapatkan semua data: beberapa penyedia SSL pasif hanya menyediakan data pada sertifikat yang dikeluarkan oleh CA yang tepercaya, dan cakupan sertifikat yang ditandatangani sendiri sangat buruk. Yang lain memberikan data pada sertifikat yang ditandatangani sendiri, tetapi hanya mengumpulkannya dari port standar.Kami telah mengumpulkan sendiri semua koleksi di atas. Misalnya, untuk mengumpulkan data tentang sertifikat SSL, kami menulis layanan kami sendiri yang mengumpulkannya dari CA yang tepercaya dan dengan memindai seluruh ruang IPv4. Sertifikat dikumpulkan tidak hanya dari IP, tetapi juga dari semua domain dan subdomain dari database kami: jika Anda memiliki domain example.com dan subdomainnya www.example.com dan semuanya diselesaikan ke IP 1.1.1.1, maka ketika Anda mencoba mendapatkan SSL- sertifikat dari port 443 oleh IP, domain dan subdomainnya, Anda bisa mendapatkan tiga hasil berbeda. Untuk mengumpulkan data pada port terbuka dan menjalankan layanan, saya harus membuat sistem pemindaian terdistribusi saya sendiri, karena untuk layanan lain alamat IP server pemindaian sering dalam "daftar hitam". Server pemindaian kami juga masuk daftar hitam, tetapi hasil menemukan layanan yang kami butuhkan lebih tinggi daripada mereka yang hanya memindai port sebanyak mungkin dan menjual akses ke data ini.
Kurangnya akses ke seluruh database catatan sejarah. Penjelasan. Setiap pemasok normal memiliki riwayat akumulasi yang baik, tetapi karena alasan alami kami sebagai klien tidak bisa mendapatkan akses ke semua data historis. Yaitu Anda bisa mendapatkan keseluruhan cerita dengan catatan yang terpisah, misalnya, dengan domain atau alamat IP, tetapi Anda tidak dapat melihat sejarah segalanya - dan tanpa ini Anda tidak dapat melihat keseluruhan gambar.Untuk mengumpulkan sebanyak mungkin catatan sejarah menurut domain, kami membeli berbagai database, mem-parsing banyak sumber terbuka yang memiliki sejarah ini (ada baiknya ada banyak dari mereka), dan setuju dengan pendaftar nama domain. Semua pembaruan dalam koleksi kami sendiri, tentu saja, disimpan dengan riwayat perubahan yang lengkap.
Semua solusi yang ada memungkinkan Anda untuk membuat grafik dalam mode manual. Penjelasan. Katakanlah Anda membeli banyak langganan dari semua penyedia data yang mungkin (biasanya mereka disebut "pengayaan"). Ketika Anda perlu membuat grafik, Anda memberikan perintah "tangan" untuk membangun dari elemen komunikasi yang diinginkan, kemudian dari elemen yang muncul pilih yang diperlukan dan berikan perintah untuk menyelesaikan koneksi dari mereka, dan seterusnya. Dalam hal ini, tanggung jawab untuk seberapa baik grafik akan dibangun sepenuhnya berada di tangan orang tersebut.Kami membuat grafik otomatis. Yaitu jika Anda perlu membuat grafik, maka koneksi dari elemen pertama dibangun secara otomatis, lebih jauh dari semua yang berikutnya juga. Spesialis hanya menunjukkan kedalaman untuk membangun grafik. Proses menyelesaikan grafik secara otomatis adalah sederhana, tetapi vendor lain tidak mengimplementasikannya karena memberikan hasil yang sangat tidak relevan, dan kami juga harus mempertimbangkan kelemahan ini (lihat di bawah).
Banyak hasil yang tidak relevan adalah masalah semua grafik pada elemen jaringan. Penjelasan. Misalnya, "domain buruk" (berpartisipasi dalam serangan) dikaitkan dengan server yang selama 10 tahun terakhir 500 domain lainnya telah dikaitkan. Ketika secara manual menambahkan atau secara otomatis membuat grafik, semua 500 domain ini juga harus merangkak keluar ke grafik, meskipun mereka tidak terkait dengan serangan. Atau, misalnya, Anda memeriksa indikator IP dari laporan keamanan vendor. Sebagai aturan, laporan tersebut keluar dengan penundaan yang signifikan dan seringkali mencakup satu tahun atau lebih. Kemungkinan besar, pada saat Anda membaca laporan, server dengan alamat IP ini sudah disewakan kepada orang lain dengan koneksi lain, dan membuat grafik akan mengarah pada kenyataan bahwa Anda kembali menerima hasil yang tidak relevan.Kami melatih sistem untuk mengidentifikasi elemen-elemen yang tidak relevan sesuai dengan logika yang sama seperti yang dilakukan oleh para ahli kami dengan tangan. Misalnya, Anda memeriksa domain buruk example.com, yang sekarang berubah menjadi IP 11.11.11.11, dan sebulan lalu ke IP 22.22.22.22. Selain domain example.com, example.ru dikaitkan dengan IP 11.11.11.11, dan 25 ribu domain lainnya dikaitkan dengan IP 22.22.22.22. Sistem, seperti halnya seseorang, memahami bahwa 11.11.11.11 kemungkinan besar adalah server khusus, dan karena domain example.ru mirip dalam pengejaan dengan example.com, maka, dengan probabilitas tinggi, mereka terhubung dan harus ada di grafik; tetapi IP 22.22.22.22 milik hosting bersama, jadi Anda tidak perlu meletakkan semua domainnya ke grafik jika tidak ada koneksi lain yang menunjukkan bahwa salah satu dari 25 ribu domain ini perlu dihapus juga (misalnya, example.net). Sebelum sistem menyadari bahwa koneksi perlu diputus dan beberapa elemen tidak boleh diletakkan pada grafik, ia harus memperhitungkan banyak properti elemen dan cluster di mana elemen-elemen ini digabungkan, serta kekuatan koneksi saat ini. Sebagai contoh, jika kita memiliki cluster kecil (50 elemen) dalam grafik, yang mencakup domain buruk, dan cluster besar lainnya (5 ribu elemen) dan kedua cluster dihubungkan oleh tautan (garis) dengan kekuatan (berat) yang sangat rendah, maka koneksi ini akan terputus dan item dari cluster besar akan dihapus. Tetapi jika akan ada banyak hubungan antara cluster kecil dan besar dan kekuatan mereka akan meningkat secara bertahap, maka dalam hal ini koneksi tidak akan terputus dan elemen-elemen yang diperlukan dari kedua cluster akan tetap pada grafik.
Interval kepemilikan server dan domain tidak diperhitungkan. Penjelasan. Registrasi "domain buruk" berakhir cepat atau lambat, dan dibeli kembali untuk tujuan jahat atau sah. Bahkan dengan hosting anti peluru, server disewakan kepada peretas yang berbeda, oleh karena itu sangat penting untuk mengetahui dan memperhitungkan interval ketika domain / server tertentu berada di bawah kendali satu pemilik. Kita sering menghadapi situasi di mana server dengan IP 11.11.11.11 sekarang digunakan sebagai C&C untuk bot perbankan, dan Ransomware dikelola 2 bulan lalu. Jika Anda membangun koneksi, tidak memperhitungkan interval kepemilikan, itu akan terlihat seperti ada koneksi antara pemilik botnet perbankan dan ransomware, meskipun pada kenyataannya tidak. Dalam pekerjaan kami, kesalahan seperti itu sangat penting.Kami mengajarkan sistem untuk menentukan interval kepemilikan. Untuk domain, ini relatif sederhana, karena whois sering menunjukkan tanggal awal dan akhir pendaftaran dan, ketika ada riwayat lengkap perubahan whois, mudah untuk menentukan intervalnya. Ketika domain belum kedaluwarsa, tetapi manajemennya telah ditransfer ke pemilik lain, Anda juga dapat melacaknya. Tidak ada masalah seperti itu untuk sertifikat SSL, karena dikeluarkan sekali, tidak diperpanjang, dan tidak ditransmisikan. Tetapi untuk sertifikat yang ditandatangani sendiri, Anda tidak dapat mempercayai tanggal yang tercantum dalam tanggal kedaluwarsa sertifikat, karena Anda dapat menghasilkan sertifikat SSL hari ini, dan menentukan tanggal mulai sertifikat dari 2010. Yang paling sulit adalah menentukan interval kepemilikan untuk server, karena hanya penyedia hosting yang memiliki tanggal dan sewa. Untuk menentukan periode kepemilikan server, kami mulai menggunakan hasil pemindaian port dan membuat sidik jari dari layanan yang berjalan di port. Berdasarkan informasi ini, kami dapat mengatakan secara akurat kapan pemilik server berubah.
Sedikit koneksi. Penjelasan. Sekarang bukan masalah untuk bahkan mendapatkan daftar domain secara gratis yang merupakan alamat email tertentu, atau untuk mengetahui semua domain yang dikaitkan dengan alamat IP tertentu. Tapi, ketika datang ke peretas yang melakukan segala yang mungkin untuk membuatnya sulit dilacak, "trik" tambahan diperlukan untuk menemukan properti baru dan membangun koneksi baru.Kami menghabiskan banyak waktu meneliti cara mengambil data yang tidak tersedia dengan cara biasa. Kami tidak dapat menjelaskan cara kerjanya di sini karena alasan yang jelas, tetapi dalam keadaan tertentu, peretas melakukan kesalahan saat mendaftarkan domain atau menyewa dan menyiapkan server, yang memungkinkan Anda mengetahui alamat email, alias peretas, alamat backend. Semakin banyak koneksi yang Anda ekstrak, semakin akurat Anda dapat membuat grafik.

Cara kerja grafik kami


Untuk mulai menggunakan grafik jaringan, Anda harus memasukkan domain, alamat IP, email atau sidik jari dari sertifikat SSL di kotak pencarian. Ada tiga kondisi yang dapat dikontrol seorang analis: waktu, kedalaman langkah, dan pembersihan.



Waktu


Waktu - tanggal atau interval saat item pencarian digunakan untuk tujuan jahat. Jika Anda tidak menentukan parameter ini, sistem akan menentukan interval kepemilikan terakhir dari sumber ini. Misalnya, pada 11 Juli, Eset menerbitkan laporan tentang bagaimana Buhtrap menggunakan eksploitasi 0 hari untuk spionase dunia maya. Di akhir laporan ada 6 indikator. Salah satunya, secure-telemetry [.] Net, didaftarkan ulang pada 16 Juli. Karenanya, jika Anda membuat grafik setelah 16 Juli, Anda akan menerima hasil yang tidak relevan. Tetapi jika Anda menunjukkan bahwa domain ini digunakan sebelum tanggal ini, maka 126 domain baru dan 69 alamat IP yang tidak tercantum dalam laporan Eset jatuh pada grafik:

  • ukrfreshnews [.] com
  • unian-search [.] com
  • vesti-world [.] info
  • runewsmeta [.] com
  • foxnewsmeta [.] biz
  • sobesednik-meta [.] info
  • rian-ua [.] net
  • dan lainnya

Selain indikator jaringan, kami segera menemukan tautan ke file jahat yang memiliki tautan ke infrastruktur ini dan tag yang memberi tahu kami bahwa Meterpreter, AZORult digunakan.

Yang hebat adalah Anda mendapatkan hasil ini dalam satu detik dan Anda tidak perlu lagi menghabiskan waktu menganalisis data. Tentu saja, pendekatan ini kadang-kadang mengurangi waktu untuk investigasi beberapa kali, yang seringkali kritis.


Jumlah langkah atau kedalaman rekursi yang dengannya grafik akan dibangun


Secara default, kedalamannya adalah 3. Ini berarti bahwa semua elemen yang terkait langsung akan ditemukan dari elemen yang diperlukan, maka setiap elemen baru akan dibangun koneksi baru ke elemen lain, dan dari elemen baru dari langkah terakhir akan ada elemen baru.

Ambil contoh yang tidak terkait dengan eksploitasi APT dan 0 hari. Baru-baru ini di Habré menggambarkan sebuah kasus menarik dengan penipuan yang terkait dengan cryptocurrency. — themcx[.]co, Miner Coin Exchange phone-lookup[.]xyz, .

, . , 4 . 230 39 IP-. 2 : , , :
coinkeeper[.]cccaller-record[.]site.
mcxwallet[.]cophone-records[.]space
btcnoise[.]comfone-uncover[.]xyz
cryptominer[.]watchnumber-uncover[.]info



“ ” . , . : , - ? : , , = 1. .

whois, DNS, .



APT- , . , , , .


. — lloydsbnk-uk[.]com, 3 , 250 , 2015 . , , .

2 .

, 2019 -, . , swift-department.com, saudconsultancy.com, vbgrigoryanpartners.com.


Cobalt gang


2018 Cobalt, , .


hXXps://nationalbank.bz/Doc/Prikaz.doc. , powershell, hXXp://wateroilclub.com/file/dwm.exe %Temp%\einmrmdmy.exe. %Temp%\einmrmdmy.exe aka dwm.exe — CobInt stager, hXXp://admvmsopp.com/rilruietguadvtoefmuy.

, . nationalbank[.]bz , .


IP- 46.173.219[.]152 . 40 , , bl0ckchain[.]ug
paypal.co.uk.qlg6[.]pw
cryptoelips[.]com

, , , , .


nationalbank[.]bz, , 500 Cobalt, . , :


Kesimpulan


, , , . . , , , . “” , . , . . Group-IB . . , , , , .

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


All Articles