Hidden Threat - Analisis Kerentanan Menggunakan Grafik Berita

Ketika Anda dihadapkan dengan kerentanan baru, apa pemikiran pertama? Tentu saja, merespons secepat mungkin. Namun, kecepatan hanyalah salah satu syarat untuk pertarungan yang efektif melawan ancaman keamanan informasi. Ketika datang ke keamanan perusahaan, sama pentingnya untuk secara akurat menentukan apa yang harus Anda tanggapi terlebih dahulu. Ancaman yang diremehkan dapat menyebabkan kerugian serius atau kehilangan niat baik. Tetapi jika jumlah kerentanan terus meningkat, bagaimana dengan cepat menilai signifikansi mereka dan tidak ketinggalan detail penting?


Dinamika kerentanan oleh grup CVSS (sumber - vulners.com)

Untuk kerentanan peringkat dengan berbagai kriteria, skala Skor CVSS (Sistem Kerentanan Umum) secara tradisional digunakan, peringkat kerentanan dengan berbagai kriteria, dari kompleksitas eksploitasi hingga kerusakan yang dilakukan dan parameter lainnya.

Tampaknya, mengapa datang dengan sesuatu yang lain - tetapi Skor CVSS memiliki satu titik lemah - didasarkan pada perkiraan para ahli yang tidak didukung oleh statistik nyata.. Akan jauh lebih efisien untuk menawarkan kasus ahli yang sudah dipilih sesuai dengan kriteria kuantitatif tertentu dan membuat keputusan berdasarkan data yang diverifikasi - tetapi di mana mendapatkan data ini dan apa yang harus dilakukan selanjutnya? Kedengarannya seperti tugas yang tidak biasa dan menarik untuk pusat data - dan tantangan inilah yang mengilhami saya dan tim Vulners untuk konsep baru untuk menilai dan mengklasifikasikan kerentanan berdasarkan pada grafik informasi terkait.

Mengapa grafik? Dalam kasus jejaring sosial dan media, metode grafik telah lama dan berhasil digunakan untuk berbagai tujuan: dari menganalisis distribusi konten dalam aliran berita, hingga catatan tentang pengaruh penulis TOP terhadap opini pembaca dan pengelompokan jejaring sosial berdasarkan minat. Kerentanan apa pun dapat direpresentasikan sebagai grafik yang berisi data - berita tentang perubahan dalam perangkat lunak atau perangkat keras dan dampak yang ditimbulkan olehnya.

Tentang data


Saya tidak perlu mengumpulkan berita secara manual tentang setiap pembaruan, semua teks yang diperlukan ditemukan di database kerentanan terbuka vulners.com. Secara visual, data adalah sebagai berikut:



Setiap kerentanan, selain namanya, tanggal publikasi dan deskripsi, memiliki keluarga (NVD, pemindai, exploit, dll.) Yang telah ditugaskan padanya (peringkat CVD (CVSS digunakan selanjutnya) v2), serta tautan ke berita terkait.

Jika Anda menyajikan koneksi ini secara skematis dalam bentuk grafik, satu kerentanan akan terlihat seperti ini: lingkaran oranye menunjukkan sumber atau publikasi induk, lingkaran hitam menunjukkan berita yang dapat Anda klik saat berada di halaman induk, dan lingkaran abu-abu mewakili berita terkait, diakses oleh Anda hanya dapat membaca semua publikasi yang ditunjukkan oleh lingkaran hitam. Setiap warna lingkaran adalah tingkat baru dari grafik informasi terkait, dari nol - kerentanan asli, hingga yang pertama, kedua dan seterusnya.



Tentu saja, ketika melihat satu item berita, kita hanya tahu tingkat nol dan tingkat pertama, oleh karena itu, untuk mendapatkan semua data, kami menggunakan metode melintasi grafik secara mendalam, yang memungkinkan kami untuk mengurai kusut berita dari awal ke node yang terhubung paling baru (selanjutnya disebut sebagai simpul grafik). Pada tahap ini, masalah optimasi keluar - perakitan grafik untuk waktu yang lama membutuhkan waktu yang lama dan harus disulap dengan skrip dan struktur data. Ngomong-ngomong, saya memutuskan untuk mengemas data akhir ke dalam parket untuk pekerjaan lebih lanjut dengan mereka menggunakan spark sql, yang sangat memudahkan analisis awal.

Seperti apa tampilan data grafik? Visualisasi akan membantu kita lebih memahami sifat mereka. Gambar 4 menunjukkan grafik kerentanan Heartbleed yang diketahui tetapi tidak terlalu berbahaya (hanya 5 dari 10 poin pada skala cvss).



Melihat “buket” luar biasa dari berita dan eksploitasi terkait ini, di mana titik merah adalah kerentanan asli, kami memahami bahwa Heartbleed secara signifikan diremehkan.

Berdasarkan contoh ini, kita dapat menyimpulkan bahwa sistematisitas, durasi, dan parameter kerentanan lainnya diperkirakan cukup baik menggunakan metrik grafik. Berikut adalah beberapa contoh metrik penelitian yang berfungsi sebagai dasar untuk klasifikasi alternatif:

  • jumlah node dalam grafik - bertanggung jawab atas "luasnya" dari kerentanan, seberapa besar jejak yang tersisa di berbagai sistem,
  • jumlah subgraph (kelompok besar berita) - bertanggung jawab atas rincian masalah atau adanya area masalah besar dalam kerentanan,
  • jumlah eksploit dan tambalan terkait - menunjukkan ledakan berita dan berapa kali harus "diperlakukan",
  • jumlah jenis dan keluarga berita yang unik dalam grafik adalah tentang sistematisitas, yaitu jumlah subsistem yang dipengaruhi oleh dampak kerentanan,
  • durasi dari publikasi pertama hingga exploit pertama, waktu dari publikasi pertama hingga berita terkait terakhir - tentang sifat temporal dari kerentanan, apakah itu membentang dengan “ekor” konsekuensi yang besar atau dengan cepat berkembang dan memudar.

Tentu saja, ini tidak semua metrik, di bawah tudung penelitian, sekarang ada sekitar 30 indikator yang melengkapi set dasar kriteria CVSS, termasuk kenaikan rata-rata antara tingkat grafik kerentanan berita, persentase eksploitasi pada tingkat pertama grafik, dan banyak lagi.

Buka zona abu-abu


Dan sekarang sedikit ilmu data dan statistik - lagipula, hipotesis perlu dikonfirmasi tentang data, bukan?

Untuk percobaan dengan skala alternatif dan metrik baru, berita yang diterbitkan pada Januari 2019 dipilih. Ini adalah 2403 buletin dan sekitar 150 ribu baris di kolom berita. Semua kerentanan sumber dibagi menjadi tiga kelompok menurut Skor CVSS:

  • Tinggi - mulai dari 8 poin inklusif.
  • Sedang - dari 6 inklusif hingga 8 poin.
  • Rendah - kurang dari 6 poin.

Pertama, mari kita lihat bagaimana skor CVSS berkorelasi dengan jumlah berita terkait dalam grafik, jumlah jenis berita dan jumlah eksploit:







Dalam gambar yang ideal, kita seharusnya melihat pemisahan metrik yang jelas menjadi tiga kelompok, tetapi ini tidak terjadi, yang mengindikasikan kemungkinan adanya zona abu-abu, yang Skor CVSS tidak mendefinisikan - ini adalah tujuan kami.

Langkah logis berikutnya adalah pengelompokan kerentanan ke dalam kelompok-kelompok yang homogen dan pembangunan skala baru.

Untuk iterasi pertama, penggolong metrik sederhana dan k-means dipilih dan matriks baru estimasi diperoleh: titik awal (Sedang, Rendah, Tinggi) ditemukan pada sumbu Y, sepanjang X, di mana 2 adalah yang terbesar dalam metrik kerentanan baru, 1 adalah kerentanan baru, 0 adalah yang terkecil.



Sebuah zona yang ditandai dengan oval (Kerentanan Kelas 2 dengan peringkat rendah & sedang awal) —Kerentanan yang terlalu diremehkan. Pemisahan ke dalam kelas-kelas baru juga terlihat lebih jelas, yang kami tuju:







Namun, mempercayai model adalah ide yang buruk, terutama ketika menyangkut pengelompokan tanpa pengawasan, di mana jawaban yang benar tidak diketahui secara prinsip, dan Anda hanya dapat mengandalkan metrik pemisahan dari kelas yang diperoleh .

Dan di sinilah kita membutuhkan pengetahuan ahli - karena untuk pengujian dan interpretasi hasil yang baik, pengetahuan tentang bidang subjek diperlukan. Oleh karena itu, diinginkan untuk memeriksa model secara langsung, misalnya, dengan menarik beberapa kerentanan untuk analisis terperinci.

Di bawah ini adalah beberapa contoh cerah dari zona abu-abu yang memiliki skor CVSS rendah, tetapi skor grafik tinggi - yang berarti berpotensi membutuhkan prioritas yang berbeda untuk bekerja dengannya. Berikut ini tampilannya dalam representasi grafis:

CVE-2019-0555 (skor CVSS 4.4, grafik kelas 2 tinggi)





SMB_NT_MS19_JAN_DOTNET.NASL (skor CVSS 5.0, kelas grafik 2 tinggi)





CVE-2019-1653 (skor CVSS 5.0, kelas grafik 5.0, kelas grafik 2 - tinggi)





RHSA-2019: 0130 (skor CVSS 5.0, kelas grafik 2 - tinggi)





Tampaknya konsep itu dikonfirmasi oleh statistik dan verifikasi titik, jadi dalam waktu dekat kami ingin menyelesaikan dan mengotomatiskan koleksi metrik grafik, dan - mungkin - penggolong itu sendiri. Tentu saja, masih ada banyak pekerjaan yang harus dilakukan - dari mengumpulkan sejumlah besar grafik baru selama berbulan-bulan tidak tercakup dalam penelitian ini, tetapi ini hanya menambah antusiasme, seperti halnya esensi dari tugas tersebut. Sebagai seorang ilmuwan data, saya dapat mengatakan bahwa pekerjaan pada penelitian ini adalah pengalaman yang sangat menginspirasi, baik dalam hal topik dan kompleksitas - bahkan pekerjaan teknik persiapan dengan data yang terstruktur sangat menarik.

Akhirnya


Bagaimana cara mengambil langkah dari penilaian ahli ke bilangan real dan mengevaluasi yang tak ternilai?

Setelah penelitian, menjadi jelas bahwa pertama-tama, pendekatan kritis diperlukan tidak hanya untuk setiap metrik atau data, tetapi juga untuk proses secara keseluruhan, karena dunia terlalu dinamis dan berubah lebih cepat daripada metodologi dan dokumentasi. Selalu dievaluasi dengan satu cara - mengapa tidak mencoba menggeser sudut pandang? Seperti yang ditunjukkan oleh contoh kita, bahkan hipotesis paling tidak biasa pun dapat dikonfirmasikan.

Peran penting dimainkan oleh ketersediaan data untuk datasaentists - memungkinkan Anda untuk dengan cepat memeriksa hipotesis yang paling berani dan lebih memahami esensi area subjek Anda dalam semua manifestasinya. Karena itu, jika Anda belum mengumpulkan atau menghapus data yang "tidak perlu", pikirkanlah, mungkin ada banyak penemuan yang bersembunyi di sana. Kasus ini menunjukkan bahwa data didorong dan keamanan informasi saling melengkapi dengan sempurna.

All Articles