Paper Title: Do and Don’ts of machine learning in computer security
Authors: Daniel Arp, Erwin Quiring, Feargus Pendlebury, Alexander Warnecke, Fabio Pierazzi, Christian Wressnegger, Lorenzo Cavallaro, Konrad Rieck
Venue: underreviewed; Technical Report: Arxiv:2010.09470, October 2020
URL: https://arxiv.org/abs/2010.09470
Problem: Machine learning mulai banyak digunakan di bidang security. Namun ada beberapa pitfall yang dapat menurunkan performa dan menyebabkan implementasinya tidak sesuai dengan standar task security di mesin learing
Contribution:
- Identifikasi 10 pitfall machine learning di security yang mempengaruhi workflow sistem, serta melakukan analisa longitudinal pada 30 paper security yang telah dipublikasikan pada 30 top-tier conference pada 10 tahun terakhir
- Melakukan eksperimen analisa impact pitfall tersebut pada 4 domain security berbeda, apakah menimbulkan bias eksperimen, hasil yang membesar, dan menimbulkan misinterpretasi
- Memberi rekomendasi dos and don’t bagi peneliti dan praktisi keamanan dalam pengembangan dan penggunaan machine learning di bidang security
Method/solution
- Melakukan studi longitudinal, dengan focus pada 6 tahun terakhir, 30 paper yang dipublikasikan pada 4 conference terbaik dibidang security yaitu ACM CCS, IEEE S&P, USENIX Security dan NDSS.
- 6 paper tentang deteksi malware, 4 paper tentang deteksi serangan pada jaringan, 4 paper tentang vulnerability discovery (mencari celah keamanan sistem), 4 paper tentang serangan website pingerprinting, 3 paper tentang abuse social media, 3 paper tentang analisa kode binary, 2 paper tentang atribusi kode, 1 paper masing-masing tentang steganography, online scam, game bots dan ad blocking
- Setiap paper di review oleh 2 orang reviewer yang menguji artikel apakah mengandung 10 pitfall machine learning
- Reviewer terdiri dari 6 peneliti yang telah memiliki publikasi pada tema machine learning dan security pada minimal 1 conference diatas.
- Setelah 2 reviewer selesai mereview 1 paper, mereka mendiskusikan hasil temuannya dengan reviewer ketiga
- Pada setiap paper pitfall dikategorikan sebagai, present (ada), not present (tidak ada), unclear from text (tidak jelas), atau does not apply (tidak berlaku)
- Pengujian dilakukan pada 4 domain; mobile malware detection (P1,P4,P7), vulnerability discovery (P2,P4,P6); source code authorship attribution (P1,P4) dan network intrusion detection (P6, P9)
Main result
10 pittfall machine learning:
- Sampling bias: dataset yang dikumpulkan tidak merepresentasikan distribusi data pada permasalahan security yang sesungguhnya (60%)
- Label Inaccuracy: label ground truth pada klasifikasi tidak akurat, tidak stabil, mengandung eror, dan mempengaruhi performansi sistem secara keseluruhan (10%)
- Data Snooping: Model melakukan training pada data yang umumnya tidak ada di dunia nyata. (57%)
- False Causality: Artifak yang tidak berhubungan dengan permasalahan yang dihadapi, menyebabkan shortcut pattern pada kelas yang berbeda. Sehingga model tidak menyelesaikan task yang diberikan tapi beradaptasi terhadap artifak tersebut (57%)
- Bias pemilihan parameter: Parameter akhir dari metode yang digunakan tidak fix pada saat training. Sehingga parameter ini tergantung pada set test (20%)
- Inappropriate baseline: Pengujian dilakukan tanpa baseline atau, dengan baseline yang terbatas. Sehingga sulit untuk mengetahui peningkatan dari state-of-the-art (23%)
- Inappropriate performance measures: Pengukuran performa yang digunakan tidak memperhatikan Batasan aplikasi, seperti imbalanced data atau kebutuhan untuk tingkat false-positive yang rendah (40%)
- Base Rate Fallacy: Imbalance kelas besar diabaikan Ketika melakukan interpretasi pengukuran performa, sehingga menyebabkan overestimasi dari performa (13%)
- Lab-only evaluation: Sistem hanya diuji pada laboratorium tanpa memperhatikan Batasan implementasinya di dunia nyata (43%)
- Inappropriate threat model: Keamanan machine learning yang dibangun tidak dipertimbangkan, misalnya dengan serangan poisoning dan evasion attack (17%)
- Inter-rater reliability review berdasarkan Krippendorff’s alpha adalah α = 0.832 dimana α > 0.800 adalah reliably
- Pitfall yang paling banyak ditemukan adalah Sampling bias (P1) dan data snooping (P3) yang ditemukan pada lebih dari 73% paper
- Lebih dari 50% paper memiliki pitfall inappropriate threat model (P10), lab-only evaluations (p9) dan inappropriate baselines (p6)
- Setiap paper setidaknya memiliki 3 pittfalls
- Pengumpulan dataset masih menjadi masalah
- Beberapa dataset yang tersedia masih belum sempurna
- Keberadaan beberapa pitfall masih belum jelas dari paper yang ada dibandingkan pitfall lain. Contohnya biased parameter selection (p5) pada saat tidak ada deskripsi dari hyperparameter atau prosedur tuning diberikan; false causality (p4) ketika tidak ada percobaan untuk menjelaskan pemilihan model dan data snooping (P3) ketika pembagian dataset atau prosedur normalisasi tidak secara eksplisit dijelaskan.
- Semua pitfall ditemukan pada penelitian, dengan range 23%-90%
- Hanya 20% paper memiliki bagian discussion
- Rekomendasi: Mengumpulkan data yang berhubungan tentang security, handling noisy label, explainable learning, calibrating security systems, performance metrics, security baselines, deployment for security, security of deployment.
Limitation:
- Hasil review bisa bias, tergantung dari perspektif reviewer
- Jumlah paper yang direview terlalu sedikit