Worm FritzFrog telah diidentifikasi, menginfeksi server melalui SSH dan membangun botnet terdesentralisasi

Perusahaan Guardicore, yang berspesialisasi dalam perlindungan pusat data dan sistem cloud, mengungkapkan FritzFrog, malware baru berteknologi tinggi yang menyerang server berbasis Linux. FritzFrog menggabungkan worm yang menyebar melalui serangan bruteforce pada server dengan port SSH terbuka, dan komponen untuk membangun botnet terdesentralisasi yang beroperasi tanpa node kontrol dan tidak memiliki satu titik kegagalan pun.

Untuk membangun botnet, protokol P2P eksklusif digunakan, di mana node berinteraksi satu sama lain, mengoordinasikan organisasi serangan, mendukung pengoperasian jaringan, dan memantau status satu sama lain. Korban baru ditemukan dengan melakukan serangan bruteforce pada server yang menerima permintaan melalui SSH. Ketika server baru terdeteksi, kamus kombinasi khas login dan kata sandi dicari. Kontrol dapat dilakukan melalui node mana pun, sehingga sulit untuk mengidentifikasi dan memblokir operator botnet.

Menurut peneliti, botnet tersebut sudah memiliki sekitar 500 node, termasuk server dari beberapa universitas dan perusahaan kereta api besar. Sasaran utama serangan tersebut adalah jaringan lembaga pendidikan, pusat kesehatan, lembaga pemerintah, bank, dan perusahaan telekomunikasi. Setelah server disusupi, proses penambangan cryptocurrency Monero diatur di dalamnya. Aktivitas malware tersebut telah terlacak sejak Januari 2020.

Hal istimewa tentang FritzFrog adalah ia menyimpan semua data dan kode yang dapat dieksekusi hanya di memori. Perubahan pada disk hanya terdiri dari penambahan kunci SSH baru ke file otor_keys, yang selanjutnya digunakan untuk mengakses server. File sistem tidak diubah, yang membuat worm tidak terlihat oleh sistem yang memeriksa integritas menggunakan checksum. Memori juga menyimpan kamus untuk kata sandi brute force dan data untuk penambangan, yang disinkronkan antar node menggunakan protokol P2P.

Komponen berbahaya disamarkan sebagai proses ifconfig, libexec, php-fpm dan nginx. Node botnet memantau status tetangganya dan, jika server di-boot ulang atau bahkan OS diinstal ulang (jika file otor_keys yang dimodifikasi ditransfer ke sistem baru), mereka mengaktifkan kembali komponen berbahaya di host. Untuk komunikasi, SSH standar digunakan - malware juga meluncurkan "netcat" lokal yang mengikat antarmuka localhost dan mendengarkan lalu lintas pada port 1234, yang diakses oleh host eksternal melalui terowongan SSH, menggunakan kunci dari Authorized_keys untuk terhubung.

Worm FritzFrog telah diidentifikasi, menginfeksi server melalui SSH dan membangun botnet terdesentralisasi

Kode komponen FritzFrog ditulis dalam Go dan dijalankan dalam mode multi-threaded. Malware ini mencakup beberapa modul yang berjalan di thread berbeda:

  • Cracker - mencari kata sandi di server yang diserang.
  • CryptoComm + Parser - mengatur koneksi P2P terenkripsi.
  • CastVotes adalah mekanisme untuk bersama-sama memilih host target untuk diserang.
  • TargetFeed - Menerima daftar node yang akan diserang dari node tetangga.
  • DeployMgmt adalah implementasi worm yang mendistribusikan kode berbahaya ke server yang disusupi.
  • Dimiliki - bertanggung jawab untuk menghubungkan ke server yang sudah menjalankan kode berbahaya.
  • Assemble - merakit file dalam memori dari blok yang ditransfer secara terpisah.
  • Antivir - modul untuk menekan malware pesaing, mengidentifikasi dan menghentikan proses dengan string "xmr" yang menghabiskan sumber daya CPU.
  • Libexec adalah modul untuk menambang cryptocurrency Monero.

Protokol P2P yang digunakan di FritzFrog mendukung sekitar 30 perintah yang bertanggung jawab untuk mentransfer data antar node, menjalankan skrip, mentransfer komponen malware, status polling, bertukar log, meluncurkan proxy, dll. Informasi ditransmisikan melalui saluran terenkripsi terpisah dengan serialisasi dalam format JSON. Enkripsi menggunakan sandi AES asimetris dan pengkodean Base64. Protokol DH digunakan untuk pertukaran kunci (Diffie-Hellman). Untuk menentukan status, node terus-menerus bertukar permintaan ping.

Semua node botnet memelihara database terdistribusi dengan informasi tentang sistem yang diserang dan disusupi. Target serangan disinkronkan di seluruh botnet - setiap node menyerang target terpisah, mis. dua node botnet yang berbeda tidak akan menyerang host yang sama. Node juga mengumpulkan dan mengirimkan statistik lokal ke tetangganya, seperti ukuran memori bebas, waktu aktif, beban CPU, dan aktivitas login SSH. Informasi ini digunakan untuk memutuskan apakah akan memulai proses penambangan atau menggunakan node hanya untuk menyerang sistem lain (misalnya, penambangan tidak dimulai pada sistem yang dimuat atau sistem dengan koneksi administrator yang sering).

Untuk mengidentifikasi FritzFrog, para peneliti telah mengusulkan cara sederhana skrip cangkang. Untuk menentukan kerusakan sistem
tanda-tanda seperti adanya koneksi mendengarkan pada port 1234, adanya kunci berbahaya di Authorized_keys (kunci SSH yang sama dipasang di semua node) dan keberadaan proses yang berjalan di memori “ifconfig”, “libexec”, “php-fpm” dan “nginx” yang tidak terkait dengan file executable (“/proc/ /exe" menunjuk ke file jarak jauh). Tandanya juga bisa berupa adanya lalu lintas pada port jaringan 5555, yang terjadi ketika malware mengakses kumpulan web.xmrpool.eu selama penambangan mata uang kripto Monero.

Sumber: opennet.ru

Tambah komentar