Minggu Ini Dalam Keamanan: Penelitian Dan Deteksi Symbiote, Pembajakan Perutean, Bruggling, Dan Lainnya

Minggu lalu kami membahas Symbiote Rootkit, berdasarkan karya luar biasa dari Blackberry, Intezer, dan Cyber ​​Geeks. Malware khusus ini membutuhkan beberapa langkah yang sangat cerdik dan licik untuk disembunyikan. Ini menggunakan LD_PRELOAD untuk mengganggu perpustakaan sistem saat itu juga, menyembunyikan file, proses, port, dan bahkan lalu lintas tertentu dari pengguna dan alat deteksi. Baca kolom minggu lalu dan artikel sumber yang ditautkan di sana untuk detailnya.

Ada teknik umum untuk mendeteksi rootkit, di mana alat membuat file atau proses yang meniru elemen rootkit, dan kemudian memeriksa apakah ada yang palsu hilang secara misterius. Saat membaca tentang Symbiote, saya mencari alat yang dapat kami rekomendasikan, yang menggunakan teknik ini untuk memeriksa infeksi. Singkatnya, saya membersihkan topi peneliti keamanan saya, dan mulai bekerja. Pointer yang sangat membantu dari Intezer membawa saya ke halaman MalwareBazaar di Symbiote. Perhatikan, halaman itu menampung sampel malware langsung. Jangan mengunduh dengan ringan.

Ini membawa kita ke masalah besar pertama yang perlu kita atasi. Bagaimana Anda menangani malware tanpa membuat mesin Anda dan jaringan yang lebih luas terinfeksi? Virtualisasi dapat menjadi bagian besar dari jawaban di sini. Ini adalah lompatan yang sangat besar bagi malware untuk menginfeksi mesin virtual, dan kemudian melompati celah untuk menginfeksi host. Sedikit pengaturan yang hati-hati dapat membuatnya lebih aman. Pertama, gunakan OS atau distro yang berbeda untuk host VM dan klien riset Anda. Malware canggih cenderung sangat bertarget, dan kecil kemungkinan sampel yang diberikan akan mendukung dua distro yang berbeda. Host bare-metal adalah instalasi terbaru untuk keamanan terbaik, tetapi bagaimana dengan korbannya?

Meskipun kami menginginkan fondasi antipeluru, VM penelitian kami harus rentan. Jika malware ditargetkan pada versi kernel atau library tertentu, kami memerlukan versi yang tepat itu untuk memulai. Sayangnya, sampel di MalwareBazaar tidak menyertakan detail tentang mesin tempat mereka ditemukan, tetapi sampel tersebut dilengkapi dengan tautan ke alat analisis lain, seperti Intezer Analyze. Satu string yang disematkan menarik perhatian saya: GCC: (GNU) 4.4.7 20120313 (Red Hat 4.4.7-17) Itu mungkin dari mesin tempat sampel Symbiote ini dikompilasi, dan sepertinya ini merupakan titik awal yang baik. GCC 4.4.7-17 dikirimkan dengan Red Hat Enterprise Linux versi 6.8. Jadi kami mengambil CentOS 6.8 live DVD ISO, dan mem-boot-nya di host VM kami.

Langkah selanjutnya adalah mengunduh sampel malware langsung dari MalwareBazaar. Mereka datang dalam ritsleting terenkripsi, hanya untuk mempersulit diri Anda sendiri secara tidak sengaja. Kami tidak ingin mereka mendarat di mana pun kecuali target yang dituju. Saya melangkah lebih jauh dan memutuskan adaptor jaringan virtual dan kabel jaringan fisik, untuk benar-benar membuat celah udara di lingkungan penelitian saya. Saya memiliki malware dan kemungkinan target saya, dan sudah waktunya untuk menguji teori saya bahwa Symbiote berusaha terlalu keras untuk menjadi licik, dan akan membunyikan alarm dengan sendirinya jika saya menusuknya dengan benar.

Kesuksesan! Kami menggunakan sentuhan untuk membuat file bernama java.h, dan menggunakan ls untuk memverifikasi bahwa itu benar-benar ada. Kemudian, tambahkan LD_PRELOAD dan jalankan ls lagi, dan java.h hilang secara misterius. Trik serupa berfungsi untuk mendeteksi persembunyian proses. Kami mengubah java.h menjadi skrip dengan menulis while true; tidur 1; dilakukan ke dalamnya. Jalankan skrip di latar belakang, dan lihat apakah skrip tersebut terdaftar di ps -A -caf. Untuk nama file di daftar sembunyikan Symbiote, itu juga menghilang. Bagian terbaiknya adalah kita dapat membuat skrip deteksi ini. Saya memberi Anda, sym-test.sh. Itu membuat dan menjalankan skrip sederhana untuk setiap file Symbiote yang dikenal, kemudian menggunakan ls dan ps untuk mencari skrip. Varian Symbiote yang bekerja seperti sampel yang pernah kita lihat di alam liar akan menunjukkan keberadaannya dan terdeteksi. Jika Anda menemukan Symbiote di mesin Anda melalui skrip ini, pastikan untuk memberi tahu kami!

Pembajakan BGP — Mungkin

Ada sedikit keanehan BGP minggu lalu, di mana perusahaan telekomunikasi Rusia, Rostelecom, mengumumkan perutean untuk 17.70.96.0/19. Blok IP ini dimiliki oleh Apple, dan semua tanda menunjukkan bahwa ini adalah pengumuman yang tidak sah. BGP, Border Gateway Protocol, adalah salah satu protokol jaringan terpenting yang mungkin belum pernah Anda dengar, dan pada dasarnya membawa instruksi tentang cara merutekan lalu lintas internet di seluruh dunia. Ini juga secara historis tidak memiliki protokol keamanan apa pun, hanya mengandalkan perilaku baik dari semua pemain. Ada RPKI, standar baru untuk tanda tangan kriptografi untuk pembaruan perutean, tetapi itu bukan persyaratan yang sulit dan belum digunakan secara luas.

BGP, tanpa skema peningkatan keamanan apa pun, bekerja dengan menghormati rute paling spesifik yang tersedia. Apple mengumumkan rute untuk 17.0.0.0/9, jaringan dengan lebih dari 8.000.000 IP. Rostelecom mulai mengumumkan 17.70.96.0/19, subnet yang jauh lebih kecil yang berisi lebih dari 8.000 IP. Rute yang lebih spesifik menang, dan Rostelecom memiliki ASN yang valid, sehingga Internet membuat perubahan rute. Seseorang di Apple memperhatikan, dan mendorong pembaruan perutean untuk 17.70.96.0/21, memindahkan apa yang mungkin merupakan 2.046 IP yang paling penting kembali ke tujuan yang semestinya. Setelah sekitar 12 jam, Rostelecom membatalkan rute palsu. Baik Apple maupun Rostelecom tidak merilis pernyataan tentang insiden tersebut.

Jika ini insiden pertama yang melibatkan Rostelecom, wajar untuk menyimpulkan bahwa ini adalah kesalahan yang jujur. Rostelecom telah menunjukkan perilaku buruk di masa lalu, sehingga elemen penyangkalan yang masuk akal semakin berkurang. Mungkinkah ini bagian dari operasi yang ditargetkan terhadap iPhone atau akun Apple seseorang? Sulit untuk mengatakan apakah kami akan mengetahui detailnya dalam waktu dekat. Paling tidak, Anda dapat menonton tayangan ulang pembantaian jaringan.

Pembajakan Perutean Email

Cloudflare berkembang menjadi perutean email, dan peneliti [Albert Pedersen] agak jengkel tidak diundang ke Beta tertutup. (Beta terbuka sekarang, jika Anda memerlukan alamat email virtual untuk domain Anda.) Ternyata, Anda dapat menggunakan sesuatu seperti Burp Suite untuk “ikut serta” ke beta secara diam-diam — cukup potong respons Cloudflare API saat memuat dasbor, dan atur “beta”: true. Backend tidak memeriksa setelah dasbor awal dimuat. Meskipun akses ke beta yang ditutup sementara bukanlah masalah keamanan yang besar, ini menunjukkan bahwa mungkin ada beberapa bug serupa yang dapat ditemukan. Spoiler: ada.

Saat menyiapkan domain di akun Cloudflare Anda, pertama-tama tambahkan domain, lalu ikuti langkah-langkah untuk memverifikasi kepemilikan. Sampai itu selesai, itu adalah domain yang belum diverifikasi, keadaan limbo di mana Anda seharusnya tidak dapat melakukan apa pun selain menyelesaikan verifikasi atau menjatuhkan domain. Meskipun domain aktif sepenuhnya di akun, Anda dapat mencoba menambahkannya ke akun lain, dan domain tersebut akan muncul sebagai salah satu domain tertunda ini. Peretas pemberani kami harus memeriksa, apakah ada cek yang hilang serupa di sini? Apa yang terjadi jika Anda menambahkan perutean email ke domain yang belum diverifikasi? Ternyata, pada saat itu, itu berhasil tanpa keluhan. Domain harus sudah menggunakan Cloudflare untuk email, tetapi trik ini memungkinkan penyadapan semua email yang masuk ke domain tersebut. [Albert] memberi tahu Cloudflare melalui HackerOne, dan mencetak $ 6.000 yang berguna untuk penemuan itu. Bagus!

Post-Quantum, Tapi Masih Rusak

Institut Nasional Standar dan Teknologi, NIST, menjalankan kompetisi berkelanjutan untuk memilih algoritma kriptografi generasi berikutnya, dengan tujuan seperangkat standar yang kebal terhadap komputer kuantum. Baru-baru ini ada pengingat yang agak mencolok bahwa selain resistensi terhadap algoritma kuantum, skema kriptografi juga harus aman terhadap serangan klasik.

SIKE adalah salah satu algoritme yang berhasil melewati proses seleksi, dan sebuah makalah baru-baru ini diterbitkan yang menunjukkan teknik untuk memecahkan algoritme dalam waktu sekitar satu jam. Teknik yang digunakan telah dikenal untuk sementara waktu, tetapi matematika tingkat sangat tinggi, itulah sebabnya butuh waktu lama untuk serangan yang tepat untuk ditunjukkan. Meskipun kriptografer adalah ahli matematika, mereka umumnya tidak bekerja di bidang matematika yang canggih, jadi interaksi tak terduga ini muncul dari waktu ke waktu. Jika tidak ada yang lain, itu bagus bahwa cacat itu ditemukan sekarang, dan bukan setelah ratifikasi dan penggunaan teknik baru secara luas.

Bit dan Bruggling Byte

Sebuah portmanteau dari Browser dan Penyelundupan, Bruggling adalah teknik eksfiltrasi data baru yang cukup konyol untuk bekerja. Beberapa jaringan perusahaan berusaha sangat keras untuk membatasi cara pengguna dan aplikasi jahat dapat mengambil data dari jaringan dan keluar ke pelaku jahat melalui Internet. Ini adalah pencarian tanpa harapan, dan Bruggling adalah contoh lainnya. Jadi apa itu? Bruggling adalah memasukkan data ke dalam nama dan konten bookmark, dan membiarkan browser menyinkronkan bookmark tersebut. Karena ini terlihat seperti lalu lintas normal, meskipun berpotensi *banyak* lalu lintas, umumnya tidak akan memicu sistem IDS apa pun seperti permintaan DNS yang aneh. Sejauh ini Bruggling hanyalah sebuah ide akademis, dan belum diamati di alam liar, tetapi mungkin saja datang ke malware di dekat Anda.

LibreOffice baru saja menambal beberapa masalah, dan dua di antaranya sangat penting. Pertama adalah CVE-2022-26305, cacat dalam cara makro ditandatangani dan diverifikasi. Tanda tangan makro itu sendiri tidak diperiksa dengan benar, dan dengan mengkloning nomor seri dan string penerbit makro tepercaya, yang jahat dapat melewati filter normal. Dan CVE-2022-26306 adalah kelemahan kriptografi dalam cara LibreOffice menyimpan kata sandi. Vektor Inisialisasi yang digunakan untuk enkripsi adalah nilai statis daripada dibuat secara acak untuk setiap pemasangan. Cacat semacam ini biasanya memungkinkan serangan pra-komputasi, di mana tabel pencarian dapat dikompilasi yang memungkinkan dengan cepat memecahkan kumpulan data terenkripsi yang sewenang-wenang. Dalam versi terbaru LibreOffice, jika menggunakan fitur ini, pengguna akan dimintai kata sandi baru untuk mengenkripsi ulang konfigurasi mereka dengan lebih aman.

Samba juga telah memperbaiki beberapa masalah, salah satunya terdengar seperti titik plot yang bagus untuk film peretasan Hollywood. Pertama adalah CVE-2022-32744, cacat logika di mana kata sandi yang valid diterima untuk permintaan perubahan kata sandi, daripada hanya menerima kata sandi yang valid untuk akun yang diubah. Dan CVE-2022-32742 adalah yang menyenangkan, di mana koneksi SMB1 dapat memicu buffer underflow. Pada dasarnya klien memberi tahu server bahwa ia ingin mencetak 10 megabyte, dan mengirimkan sepanjang 15 byte untuk dicetak (angka dibuat untuk memperjelas maksudnya). Server menyalin data dari buffer yang terlalu kecil, dan menggunakan nilai ukuran yang ditetapkan oleh penyerang, ala Heartbleed. Saya ingin melihat film caper di mana data dicuri dengan menggunakan bug semacam ini untuk mencetaknya ke printer line-feed yang sudah lama terlupakan.

Dan akhirnya, pemasangan Atlassian Confluence berada di bawah serangan aktif, sebagai akibat dari beberapa eksploitasi. Ada kredensial hard-code yang tertinggal dalam solusi Confluence di lokasi, dan kredensial tersebut dirilis secara online. Sepasang kerentanan kritis di Filter Servlet dapat dieksploitasi tanpa kredensial yang valid. Jika Anda masih menjalankan pemasangan Confluence yang tidak ditambal dan tidak dikurangi, mungkin sudah waktunya untuk langsung beralih ke penahanan dan pembersihan. Aduh!