Self-Supervised Learning -Goyal -Paper Review

Paper Title: Self Supervised Pretraining of Visual Features in the wild

Authors: Priya Goyal, Mathilde Caron, Benjamin Lefaudeux, Min Xu, Pengchao Wang, Vivek Pai, Mannat Singh, Vitaliy Liptchinsky, Ishan Misra, Armand Joulin, Piotr Bojanowski

Venue: pre-print; Arxiv

URL: https://arxiv.org/abs/2103.01988

Problem:

Beberapa model self-supervised learning seperti MoCo, SimCLR, BYOL dan SwAV telah mengalami perkembangan yang baik dan mendekati performa Supervised learning. Namun pengujian model-model tersebut dilakukan pada lingkungan yang terkontrol seperti dataset ImageNet. Apakah model SSL bisa belajar dari random image, uncurated, unlabeled, dan dari dataset manapun

Contribution:

  1. Mengajukan model Self-Supervised (SEER) baru
  2. Membuktikan bahwa SSL dapat bekerja pada kondisi sebenarnya

Method/solution

  1. Melakukan pretraining high capacity model pada miliar gambar internet random, tampa memperhatikan meta-data atau anotasi untuk filtering pada data
  2. Fokus pada REgNet family, terutama aristektur dengan 700 juta parameter
  3. Training model dilakukan secara onlne pada sebuah dataset 2Milliar gambar internet random menggunakan SwAV SSL. Menggunakan beberapa tools yang ada untuk mengurangi pemakain memori, termasuk mixed precision dan gradient checkponting
  4. SwAV membandingkan fitur-fitur dari sudut pandang berbeda dari gambar yang sama menggunakan intermediate cluster assignment. SwAV adalah metode clustering online untuk training convnets tanpa anotasi. Caranya dengan melakukan training sebuah embedding yang menghasilkan cluster assignment konsisten antara multiple view dari gambar yang sama
  5. Dengan mining cluster invariant ke augmentasi data, sistem belajar representasi semantic.
  6. Bila feature menangkap informasi sama, maka mungkin untuk memprediksi assignment dari satu fitur ke view lain.
  7. Kita menetapkan sebuah set K cluster, yang diasosiasikan dengan prototype vector vk dengan d dimensi. Diberikan sebuah batch B image, setiap gambar i ditransformasikan menjadi 2 views: xiq dan xi2. Setiap view kemudian difiturisasi dengan sebuah convnet, menghasilkan 2 set fitur (f11,…,fB1) dan F12,…,fb2)
  8. Setiap set fitur di assigned secara independent ke prototipe cluster menggunakan optimal transport solver
  9. Solver ini memaksa fitur terbagi sepanjang cluster secara seragam, menghindarkan solusi trivial dimana semua representasi dipetakan ke prototipe unik.
  10. Cluster prediction loss l(f,y) adalah cross entropy antara cluster assignment dan sebuah softwax dari dot produk dari f dan semua prototipe vk
  11. Menggunakan Arsitektur RegNetY dan menambahkan sebuah squeeze-and excitation op untuk meningkatkan performa
  12. Model family RegNetY diparameterkan dengan 5 parameter
  13. Model menggunakan arsitektur RegNetY-256GF dengan paramater; w0=640, wa=230,83, wm=2,53, group width=373
  14. Memiliki 4 stages dengan stage depths (2,7,17,1 dan stage width (528, 1056, 2904, 7392) yang menghasilkan 695,5 juta parameter
  15. Menguji 2 learning rate schedule; cosine wave dan fixed learning rate. Pada training model RegNetY-256GF menggunakan cosine learning rate schedule pada 1 milliar gambar
  16. Mengurangi pemakaian memori GPU selama training dengan gradient checkpointing dan mixed precision
  17. Menggunakan level optimasi 01 pada NVIDIA Apex Library untuk operasi GEMMs dan konvolusi pada 16 bit floating point precision
  18. Menggunakan Pytorch gradient checkpointing implementasi
  19. Mengenable mixed-precision untuk optimasi memori dan training speed.
  20. Melakukan pretraining RegNetY-256GF dengan SwAV dengan 6 crop per image pada resolusi 2×224+4×96. Data Augmentation mengikuti Caron et.al [7]
  21. Pada pretraining menggunakan 3-layer multi-layer perceptron (MLP) projection head of dimensions 10444×8192, 8192×8192 dan 8192×256
  22. Tidak menggunakan layer BatchNorm pada head
  23. Menggunakan 16ribu proroipe, temperature t set =0,1 
  24. Parameter Sinkhorn regularisasi e=0,05 dan 10 iterasi algoritma Sinkhorn
  25. Melakukan sinkronisasi Batch-norm stat antara gpus dan membuat process group dengan ukuran 64 untuk sinkronisasi
  26. Menggunakan weight decay 10-5, Lars optimizer dan optimasi 01 mixed-precision dari Apex library
  27. Menggunakan activation checkpointing
  28. Melakukan training model dengan stochastic gradient descent menggunakan ukuran batch besar pada 8192 gambar berbeda yang didistribusikan pada 512 NVIDIA V100 32 GB GPUs, menghasilkan 16 gambar berbeda pada setiap GPU.
  29. Secara keseluruhan menggunakan 1 milliar gambar pada training dengan iterasi 122ribu
  30. Pengujian dilakukan dengan pretraining 6 arsitektur Regnet {8,16,32,64,128,256} pada 1 milliar random, public dan non-EU gambar Instagram dengan SwAV
  31. Melakukan finetune model tesebut dengan task image classification pada ImageNet dengan standar 1,28 juta gambar training dengan label, dan mengevaluasi 50ribu gambar pada standar validation set
  32. Finetune untuk 35 epochs dengan SGD, ukuran batch 256, learning rate 0,0125 dikurangi dengan factor 10 setelah 30 epoch, weight decay 10-4 dan momentum 0,9
  33. Baseline menggunakan iNaturalist, OpenImages, Places205, PascalVOC

Main result

  1. Hasil pengujian pada RegNetY dengan 1,3 Miliar parameter di training pada 1 milliar gambar random dengan GPU 512 menghasilkan akurasi 84,2%
  2. Hasil akurasi lebaih baik 1% daripada model ssl terbaik saat ini
  3. Model pretraining SEER tidak hanya baik untuk insialisasi training pada dataset curated seperti Image NET, namun juga baik pada few shot learning. Mencapai 75,1% hanya dari 10% dataset ImageNet. 
  4. Sebuah Iterasi training pada 8704 gambar membutuhkan waktu 6125 ms,pada Nvidia GPU 512 V100 32GB
  5. Training model pada 1 milliar gambar membutuhkan 114.890 iterasi training pada sebuah ukuran batch 8701 gambar, selama 8 hari training
  6. Learning rate 0,15-9,6 pada 8000 training update. 6Setelah itu mennggunakan cosine learning rate schedule dan mendapatkan learning rate 0,009
  7. Mendapatkan akurasi terbaik pada validasi set dengan 224×224 center crop
  8. Pada pengujian 1-10% gambar didapatkan akurasi 77,9%
  9. Untuk downstream task dan arsitektur, model self-supervised pretraining menghasilkan performa lebih baik dibandingkan supervised sekitar 1,5-2 point
  10. Dibandingkan dengan weakly-supervised pretraining model usulan menghasilkan performa lebih rendah 65% dibandingkan 81%
  11. Peningkatan kapasitas model secara signifikan meningkatkan kualitas feature secara logarithmic
  12. Meningkatkan jumlah parameter pada head dan jumlah cluster meningkatkan performa model (+3%)

Limitation:

  1. Performa model masih lebih rendah dibandingkan weak-supervised
  2. Dataset yang digunakan masih relatif besar

Note:

  1. SSL reduce the gap supervised learning; ex MoCo [22], SimCLR [8], BYOL [20] dan SwAV [7] in controlled environment dataset ImageNet
  2. Pre-training approaches (weakly-supervised, semi-supervised, self-supervised) meningkatkan performansi dari downstream task Deep Learning. Contoh implementasinya pada NLP, Speech Recognition dan computer vision
  3. Faktor yang berpengaruh: a) pretraining pada dataset besar; GPT-3 language model, pretrained pada 300 M words; Speech model Wav2vec2 belajar pada 53ribu jam audio; b) menggunakan model dengan kapasitas besar, triliunan parameter pada model NLP
  4. SSL model baik pada few-shot learner mencapai 77,9% dari hanya 10% gambar dari dataset ImageNet
  5. Pretraining pada unlabeled data untuk mencapai performa state-of-the-art pada transfer learning, dan membuat sistem yang belajar secara kontinu secara self-supervised pada datastream tidak berakhir
  6. SSL model pretrained pada image net lebih baik pada supervised pretrained model pada task multiple downstream
  7. training unlabele data dengan kemajuan SSL [6,8,20,22]
  8. regnet dipilih karena 2 alasan: a)trade-off yang baik antara efisiensi dan performansi; b)flexible untul scaling jumlah parameter
  9. SwAV digunakan karena convergencenya yang cepat dan performansinya yang baik pada setting online dengan jumlah batch size besar.
  10. SSL pada vision dengan basis autoencoder[42.51], clustering [1,5,11] instance level discrimination [3,15,21,51]; 
  11. Basis pada contrastive learning [21,38] menghasilkan bahwa pretraining unsupervised menghasilkan feature yang melebih supervised feature pada task downstream task [7,8,20,22,37]
  12. Metode berikut membedakan each instance feature [8,22,37] atau cluster assignmentsnya [2,7,32]
  13. Sebagian besar unsupervised pretraining focus pada supervised dataset seperti imagenet atau curated dataset yang dikumpulkan dengan melakukan filtering image terkair label pre-degiened.
  14. Kesimpulannya supervised label tidak diperlukan selama kita melakukan training pada data yang difilter.
  15. Unsupervised training pada image [6,13,19] dan video [36]
  16. Penelitian dilakukan pada skala kecil dan ada bukti bahwa self-supervised pretraining lebih baik pada arsitektur besar [7,9,25]
  17. Mendapat keutungan dari distributed training [18] beberapa penelitian menunjukan kelebihan pretraining pada large curated image dataset dengan weak-supervised learning [27,35], semi supervised learning [54] atau supervised training pada ribuan juta gambar yang difilter [29.47]
  18. Mahajan et.al menunjukan pretraining pada miliaran gambar meningkatkan performa dari arsitektur besar dibandingkan melakukan training dari awal
  19. Penelitian tentang training pada data dengan skala besar bergantung pada sebuah langkah data filtering untuk menyimpan image yang terkait dengan konsep yang dituju.
  20. Filtering menggunakan hastag adalah synsets dari kelas ImageNet [35,54] atau prediksi dari sebuah pretrained object classifier.
  21. Banyak penelitian yang menunjukan manfaat training arsitektur besar untuk meningkatkan kualitas fitur visual [40,48,53]. Training arsitektur besar, penting pada pretraining sebuah dataset besar, dimana sebuah model dengan kapasitas terbatas akan underfit
  22. Hal ini menjadi lebih penting ketika pretraining dilakukan dengan contrastive learning, dimana jaringan belajar untuk membedakan antara instance pada dataset [6,8,9,20] untuk mendapatkan representasi visual yang baik
  23. Kolesnikov et.al menunjukan pentingnya training jaringan lebar untuk kualitas dari fitur visual yang dipelajari dengan self-supervision
  24. Chen et.al [9] mendapatkan performa yang baik dengan konfigurasi ResNet yang lebih dalam dan lebih lebar25. SwAV yang digunakan me-refer pada Caron.et.al [7]. 

MalGene malware evasion signature- Kirat – paper review

Paper Title: MalGene: Automatic Extraction of Malware Analysis Evasion Signature

Authors: Dhilung Kirat, Giovanni Vigna

Venue: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security

URL: http://dx.doi.org/10.1145/2810103.2813642

Problem: Malware memiliki kemampuan untuk mendeteksi sistem deteksi malware dan menghindari deteksi (evasion). Bagaimana cara mendeteksi malware yang menggunakan teknik evasion

Contribution: 

  1. Mengajukan sistem MalGene, sistem yang secara otomatis dapat mengesktrak evasion signature dari malware. Teknik ini menggunakan data mining dan data flow analysis
  2. Mengajukan teknik baru dengan system call sequence allignment yang terinspirasi dari bioinformatik (untuk aligning DNA sequence). Algoritma ini melakukan deduplication, difference pruning dan menangani branced sequence
  3. Menguji dengan 2810 sampel malware yang menggunakan teknik evasion. Sistem dapat mengesktrak evasion signature secara otomatis dan mengelompokan pada 78 kelompok

Method/solution:

  1. Analisa malware evasion dilakukan 2 tahap: yang pertama ekstrak informasi tentang execution environment. Tahap kedua membandingkan informasi yang diekstrak
  2. Malware menggunakan system calls dan user-mode API calls untuk probing environtment, kemudian menggunakan predefiend constant valuies atau informasi dari sistem sebelumnya maupun user API calls
  3. Evasion signature didefinisikan sebagai sebuah set event system calls, user API Call events dan comparison events. Comparison event adalah eksekusi dari instruksi coparasi seperti instruksi CMP pada instruction set x86. 
  4. Evasion signature adalah ∆=P∪Q ; P adalah set dari semua call events (system calls dan API calls) Q adalah set dari semua comparison events
  5. Call event p : p ∈ P adalah (nama (p), attribut (p)), dimana (p) nama call, contohnya, NtCreateFile, dan attrib(p) nama dari obyek sistem operasi terkait, contohnya C:/boot.ini.
  6. Sebuah comparison event q : q ∈ Q adalah pasangan (p,v), dimana p sebuah call event yang menghasilkan informasi pada operand pertama yang dibandingkan dengan event q. v adalah constant value used yang digunakan pada operand kedua, atau call event lain yang menghasilkan informasi bagi operand kedua 
  7. Evasion signature ∆ didapat dari 2 tahap: pertama menentukan evasion pada call sequence, dari eksekusi malware pada environment berbeda; kedua identifikasi element ∆ yang digunakan untuk evasion
  8. Dataset adalah sampel malware yang menggunakan teknik evasive dan dideteksi oleh tools deteksi dari BareCloud 
  9. Sampel dianalisa pada dua environment dimana sampel melakukan evasion pada satu environment dan menampilkan malicious activity pada environment lainnya.
  10. Sequence system calls dari kedua sistem tersebut dibandingkan dan dicari deviasi pada sequence yang berhubungan dengan evasion. Caranya dengan melakukan elignment 2 sequence dari awal, mencari gaps yang dibutuhkan untuk optimal alignment. 
  11. Deviation adalah gap terbesar pada aligned sequence. Titik ini dinamakan evasion point. Hanya system call yang dimonitor untuk menentukan evasion point
  12. Kemudian evasion signature diekstrak dari analisa log secara detail, yang terdiri dari user API calls dan comparison event
  13. Jaringan local dan konfigurasi software internal pada 2 environment sama
  14. Kedua sampel dieksekusi pada waktu bersamaan di 2 environment berbeda
  15. Menggunakan filter network service untuk menyediakan response ke DNS dan SMTP
  16. Menggunakan diff pada sequence untuk mencari gap terbesar
  17. Menggunakan algoritma sequence alignment dari bioinformatik;  Global alignment dan local alignment
  18. Algoritma global alignment menggunakan Needleman-Wunsch
  19. Local alignment menggunakan algoritma Smith-waterman
  20. Untuk menghitung kemiripan system calls menggunakan skema similarity scoring
  21. Menggunakan linear gap penalty pada proses alignment
  22. Menggunakan recursive algorithm untuk branched sequence
  23. Dua environment yang digunakan adalah Anubis dan Hypervisor
  24. Dataset terdiri dari 3107 sampel malware yang menggunakan teknik evasion
  25. Ground truth didapat dengan menguji 52 sampel dan melakukan analisa manual

Main result

  1. Largest gap didapat pada td=0,02
  2. AUC tertinggi adalah 85,214 dengan kombinasi parameter ga=-2; gb=-0,1; nwt=-2, wt=3
  3. Hasil optimasi, nilai wa=2, nwa=-2, wb=20 td=0,02
  4. Performa lebih baik daripada algoritma pembanding (LCS based); 
  5. Semua dataset ground truth dideteksi pada ω > 83 (100% recall rate)
  6. Precission dan recall rate pada crossover point adalah 0,83 dan threshold τ = 2.75.
  7. Berhasil mengekstrak 83% elemen true evasion signature dengan presisi 83%
  8. Hasil clustering mengelompokan 78 family dengan h=099

Limitation:

  1. Hanya menangkap evasion yang menggunakan system calls atau API calls
  2. Tidak membahas teknik evasion yang menggunakan forced exeption-based CPU-fingerprinting, stalling code, inspeksi FPU, memory, atau register state
  3. Hanya membahas malware Windows

Klasifikasi Malware dengan recurrent network – Pascanu – review paper

Paper TitleMalware Classification with recurrent Networks

Authors: Razvan Pascanu, Jack Stokes, Hermineh Sanossian, Mady Marinescu, Anil Thomas

Venue: IEEE International Conference on Acoustic, Speech and Signal Processing 2015

URL10.1109/ICASSP.2015.7178304

Problem: Classifier malware mesin learning yang ada saat ini berbasis hand-crafted feature vector. Metode ini rentan terhadap teknik obfuscation dengan melakukan rewrite dan reorder kode malwarenya.

Contribution

  1. Mengajukan pendekatan baru yang mempelajari bahasa malware melalui instruksi yang dieksekusi dan melakukan ekstraksi fitur time domain.
  2. Metode ini robust terhadap teknik obfuscation yang melakukan rewrite dan reorder kode malware

Method/solution

  1. Untuk ekstraksi feature menggunakan Echo state network (ESN) dan Recurrent Neural
  2. Model di training secara unsupervised
  3. Classifier menggunakan feature ini untuk mendeteksi malicious
  4. Menggunakan max-pooling dan model half-frame
  5. Recurrent model ditrain untuk memprediksi API call berikutnya dan menggunakan hidden state dari model sebagai fiexed-length feature vector yang memberikan classifier terpisah (logistic regression atau MLP)
  6. Menggunakan arsitektur Leaky-units (dengan low-pass filter yang exponential decay) untuk meningkatkan long-term memory dari sistem
  7. Menggunakan model bi-directional yang melakukan kombinasi 2 model terpisah, satu model belajar dengan memproses event pada forward direction dan model kedua yang membangun sebuah model dengan memproses event pada reverse direction
  8.  Win adalah input dari hidden layer weight matrix, Wrec adalah recurrent weight matrix, , b adalah bias, Wout adalah output weight matrix, bout adalah bias output ;  adalah fungsi activation dari hidden layer dan output layer ;  
  9. Maximum hidden state output hmax adalah 
  10. Half-frame model memasukan state dari middle sequence sebagai tambahan dari state dari end of sequence
  11. Untuk mendapatkan fixed-lentg representation digunakan maximal length N dan minimal length n pada stream manapun. Minimal n ditetapkan 15, N dicoba pada nilai 50, 100, 200 dan 65536
  12. Logistic regression dan multi-layer perceptron dengan rectifier unit digunakan untuk melakukan klasidikasi proyeksi fixed-length
  13. Menggunakan droupout untuk menampilkan peningkatan generalisasi dari model MLP
  14. RNN dan ESN ditraining secara terpisah pada klasifier
  15. Feature extractor ditrain dengan model unsupervised
  16. Dataset malware dan benign didapat dari microsoft. 
  17. Pada training, analis menyediakan event streams dari 250000 file malware yang dipilih secara random dan 250000 benign file yang dipilih secara random.
  18. Pembagian dataset adalah, pada training 297.500, validasi 54.500 dan 150.000 pada tes
  19. Training dilakukan pada segment dengan length 100 event
  20. Raw event stream terdiri dari 114 high level event yang berbeda, yang melaulan encode semua low-level API
  21. Hyper-parameter dari proyeksi dan klasifikasi model di tuned.
  22. Pada tahapan klasifikasi digunakan logistic regression dan 2 hidden-layer MLP

Main result

  1. Hasil pengujian menunjukan model hybrid dengan ESN pada model recurrent, max-pooling pada sampling non-linear dan logistic regression untuk klasifikasi akhir
  2. Dibandingkan dengan model trigram of event, menghasilkan performa lebih baik dengan true positive rate 98,3% dengan false positive rate 0,1%
  3. Pada model logistic regression dan MLP optimal learning rate adalah 1.0
  4. Dropout pada MLP memiliki probability 0,5
  5. Hidden layer dari MLP memiliki 1024 unit den menggunakan rectifier activation function. Learning rate setengah ketika validation error meningkat
  6. Ukuran dari fixed-length representation adalah 3000 untuk semua model recurrent
  7. Spectral radius awal 0,99
  8. Learning rate training adalah 1
  9. False positive rate adalah 0,1%
  10. True positive rate model trigrams adalah 36,17% lebih baik daripada bag of events model 24,46%
  11. TPR dari model ESN adalah 71,71% pada FÜR 0,1%; lebih baik daripada event trigrams 

Note

  1.  RNN- excellent results pada language modelling, online handwritten recognition dan generation, speech recognition
  2. ESN success dalam prediksi chaotic systems. 
  3. In malware, Most informative part of a sequence occurs at the beginning of the sequence and may be forgotten by standard recurrent models

Malware trends in Enterprise-Acar-PaperReview

Paper Title: An Analysis of Malware Trends in Enterprise Networks

Authors: Abbas Acar, Long Lu, A.Selcuk Uluagac, Engin Kirda

Venue: International Conference on Information Security -2019

URL: https://link.springer.com/chapter/10.1007/978-3-030-30215-3_18

Problem:

Serangan malware masih menjadi ancaman di internet. Perusahaan dan pengguna internet rumah seringkali mengalami jenis serangan malware yang berberad. Namun belum ada yang melakukan studi tentang bagaimana pola serangan malware pada perusahaan, seperti apa infection vectornya dan bagaimana tren serangannya.

Contribution

  1. Melakukan studi dan analisa serangan malware yang ditujukan pada perusahaan
  2. Sampel dikumpulkan on-site pada dua perusahaan berbeda, tidak hanya attachment email, namun juga file downliat
  3. Mempelajari jenis malware apa saja yang ditujukan pada perusahaan, bagaimana infection vectornya dan apa saja tren serangannya

Method/solution

  1. Mengumpulkan dataset 3,6 juta sampel pada dua perusahaan dari tahun 2017-2018
  2. Memasang sensor pada jaringan di 2 perusahaan
  3. Sampel dianalisa dengan modul analisa behavioural
  4. Mengumpulkan laporan analisa behavioral dan virus total
  5. Analisa yang dilakukan terdiri dari: analisa statistik, analisa threat vector, analisa social engineering, vulnerability analysis, time-series analysis
  6. Sensor dipasang pada computer end-user, memiliki akses pada payload yang tidak dienkripsi. Sensor menangkap trafik yang masuk dan keluar jaringan, trafik didalam jaringan serta aktivitas pengguna di jaringan.
  7. Samples dikirim ke back-end dan dianalisa pada sebuah sandbox yang terisolasi
  8. Persentase malware pada perusahaan A adalah 0,582 yaitu setiap 6 dari seribu file adalah malicious. Pada perusahaan B 1 dari seribu file
  9. Sampel malware dikategorikan menjadi 35 subjenis (contohnya packer, macro, evasion dll)
  10. Dari hasil report sampel diberi nilai seberapa bahayanya sampel tsb. Nilai <30 diberi label benign. Nilai >70 adalah malicious. Nilai antara 30-70 diberi label suspicious
  11. Threshold deteksi pada Virustotal yang digunakan adalah bila 3 antivirus mendeteksi malware maka sampel diberi label malware.

Main result

  1. Dari dataset yang dikumpulkan hanya 2942 file terdeteksi malware
  2. 122 sampel baru, belum pernah dikenal sebelumnya di VirusTotal
  3. 1 dari 2 sampel pada dataset tidak dapat dideteksi oleh antivirus pada virus total
  4. 1 dari 5 sampel malicious adalah baru, tidak ada di virustotal;
  5. Antivirus saja tidak efektif dalam mendeteksi malware baru
  6. Dokumen adalah tipe file yang paling banyak ditemukan pada sampel. Sementara executable dan jar adalah 2 tipe file yang paling banyak ditemukan pada perusahaan
  7. 34% sampel malware diterima dalam format jar dan diberi label sebagai bagian dari kampanye email phising oleh antivirus dan modul dynamic analysis
  8. Hasil analisa social engineering menunjukan 51% dari malicious document adalah terkait data keuangan seperti (purchase order, invoice dll), 23% dokumen bertema organisasional  atau bisnis seperti CV attachment.
  9. Hasil analisa vulnerability menemukan bahwa 80% sampel yang melakukan eksploitasi CVE menggunakan CVE yang baru dirilis pada tahun 2017. Hal ini menunjukan bahwa penyerang mengikuti perkembangan exploit dan lebih banyak menggunakannya daripada exploit lama.
  10. Hasil analisa time-series menunjukan jumlah malware yang diterima pada jam kerja jauh lebih banyak dibandingkan di luar jam kerja, dengan asumsi jam kerja adalah jam 8-17 pada senin – jumat.
  11. Trojan adalah tipe maware yang paling banyak ditemukan, diikuti dengan downloader
  12. Eksploit hanya sedikit ditemukan pada sampel
  13. Penyerang lebih banyak menempelkan malware pada dokumen makro
  14. Perusahaan A secara rata-rata menerima 0,6 sampel malware dan 8ribu sampel benign perhari, Perusahaan B secara rata-rata menerima 7,7 sampel malware dan 1300 sampel benign perhari.
  15. Resiko serangan malware berbeda-beda pada tiap perusahaan.
  16. Keyword yang banyak ditemukan pada malware dokumen adalah resume, PO, order, INV, invoice, payment, document, copu new dan RFQ (request of Quotatio)
  17. Sampel yang melakukan eksploitasi pada sebuah celah keamanan ditemukan pada waktu  2 hari – beberapa bulan setelah celah keamanan tersebut diumumkan, dengan  rata-rata 3 bulan

Limitation:

  1. Dataset tidak memiliki akses terkait infection vector, karena peneliti tidak mendapat informasi email header dan security logs
  2. Data yang diperoleh terbatas hanya pada 2 perusahaan
  3. Hanya focus pada 2 infection vector yaitu email dan file yang diunduh

Multiclass malware classification via texture statistics-Verma

Paper Title: Multiclass malware classification via first- and second-order texture statistics

Authors: Vinita Verma, Sunil K.Muttoo, V.B.Singh

Venue: Journal Computers & security Elsevier vol 97, oct 2020, 101895

URL: https://doi.org/10.1016/j.cose.2020.101895

Problem: Klasifikasi malware saat ini tidak efisien, terutama menghadapi imbalanced class. Perlu pendekatan baru

Contribution:

  1. Mengajukan sistem klasifikasi dengan analisa tekstur binary pada grayscale dengan kombinasi first-order dan grey-level co-occurrence matrix (GLCM) based second-order statistical textyre feature dari representasi visual malware

 

Method/solution

  1. Menggunakan esemble learning
  2. Pengujian menggunakan dataset Malimg
  3. Kode biner malware dibaca menjadi 8 bit integer disusun menjadi matrix dan diubah menjadi greyscale
  4. Lebar gambar fixed dan tingginya berbeda tergantung ukuran file
  5. Analisa texture biner menggunakan histogram equalization untuk mendapatkan distribusi level grey yang seragam, kemudian diubah menjadi 64×64 pixel
  6. Dilakukan penghitungan statistik first-order dan pembuatan GLCM dari gambar untuk menurunkan second-order texture statistik
  7. Feature statistik yang digunakan untuk mendapatkan teksture first-order adalah: mean, median, standar deviation, skewness, kurtosis, minimum, 10th percentile, maximum, 90th percentile, interquartile range (IQR), Mean Absolute Deviation (MAD), first-order entropy, first-order energy, coefficient of variation (CV), Range, Quartile coefficient of Dispersion (QCD), Variance, Median Absolute Deviation (MedAD) dan Root Mean Square (RMS)
  8. Feature texture menggunakan GLCM (Grey level spatial dependence matrix)
  9. GLCM dihitung dengan 3 parameter (jumlah grey level L dari gambar, distance d dan angular relationship θ antara grey level
  10. GLCM adalah matrix LxL G(i,j)
  11. Binary ditransformasi menjadi greyscale direduksi menjadi 32 level . Kemudian 4 matrix GLC< 32×32 pixel dihitung dengan θ= 0 °, 45 °, 90 °, and 135 °and d = 1
  12. Feature GLCM second order diturunkan dengan menghitung parameter berikut: contrast, Angular second moment (ASM), normalized Inverse Difference Moment (normalized IDM), joint average, sum of squares atau joint variance, joint entropy, joint maximum dan correlation
  13. Dataset 1vmenggunakan Malimg; terdiri dari 9339 sampel malware dari 25 family dengan 80-2949 sampel per family
  14. Label disediakan oleh Microsoft Security essentials
  15. Family malware dibagi menjadi kategori: worm, PWS, Dialer, Rogue, Backdoor, Trojan, dan TDownloader
  16. Parameter yang dihiting adalah precision, recall dan F1 Measure
  17. Dataset terdiri dari sampel malware yang unpacked dan packed
  18. Dataset 2 menggunakan sampel dari 2916 sampel windows virusshare, yang terdiri dari 19 family
  19. Melakukan ekstraksi 35 feature pada dataset 2

Main result

  1. Menghasilkan F1 score dan akurasi lebih tinggi dibandingkan sistem state-of-the art
  2. Menghasilkan efisiensi dan reliability yang lebih baik
  3. Robust terhadap serangan obfuscation (packing, code relocation dan encryption)
  4. Menggunakan ekstraksi feature lebih sedikit,
  5. Tidak memerlukan disassembly maupun code execution, sehingga waktu klasifikasi lebih cepat6%
  6. Precission 98,04%, recall 98,0 dan F1 98,05%
  7. Hasil klasifikasi pada dataset 2, presisi 97,44%, recall 98,12 dan F1 measure 97,75%
  8. Waktu yang dibutuhkan untuk merubah binary malware menjadi image adalah 37 mili detik
  9. Rata-rata waktu klasifikasi adalah 0,01 detik

Limitation:

  1. Terdapat kesalahan klasifikasi pada ransomware
  2. Rentan terhadap serangan evasion dengan embed malware pada binary benign dengan ukuran besar.
  3. Tidak efektif untuk mendeteksi malware baru

Malware Image Siamese Classification-Hsiao-Review Paper

Paper Title: Malware Image Classification Using One-shot Learning with Siamese Network

Authors: Shou-Ching Hsiao, Da-Yu Kao, Zi-Yuan Liu, Raylin Tso

Venue: 23rd International Conference on Knowledge-Based and Intelligent Information & Engineering Systems

URL: https://doi.org/10.1016/j.procs.2019.09.358

Problem: Machine Learning mulai banyak digunakan untuk deteksi dan klasifikasi malware. Namun model machine Learning yang ada membutuhkan sampel malware yang besar. Model yang ada tidak efektif untuk melakukan re-training untuk mengenali sampel malware baru

Contribution:

  1. Mengajukan metode baru untuk mendeteksi variant malware menggunakan klasifikasi image
  2. Mengajukan jaringan siamee untuk mengatasi kekurangan sampel malware baru
  3. Memiliki akurasi tinggi dibandingkan baseline dengan metode one-shot classification
  4. Menguji dataset dengan model deep learning dan menunjukan bahwa model deep learning tidak cocok pada kasus sampel training terbatas

Method/solution

  1. Terdiri dari tiga tahap: pre-processing, training dan testing; Pada tahap pre-processing, sistem mengubah sampel malware menjadi image gray-scale dan mengklasifikasikannya berdasarkan average hash ke dalam family yang sama
  2. Siamese Network melakukan training untuk menilai tingkat kemiripan sampel, akurasi dihitung melalui N-way one shot task
  3. Skor similarity digenerated oleh layer output sigmod yang menentukan family malware
  4. Menggunakan Siamese CNN yang memiliki weight yang sama antara sub-network. Cara ini dapat mengurangi parameter yang perlu di train dan mengurangi masalah overfitting
  5. Setelah proces 2 input image dengan CNN berbeda, sistem membuat 2 feature vectir v(m1) dan v(m2).
  6. Manhattan distance antara v(m1) dan v(m2) akan jadi input fungsi sigmoid
  7. Skor similarity dibuat dalam range [0,1] dengan 0 tidak mirip dan 1 sangat mirip
  8. Malware diconvert ke grayscale pada 8-bit vector dengan range [0,255] dengan 0 hitam dan 1 putih.
  9. Image direscale ke 105×105 pixel, original aspect ratio dipertahankan dan background dipenuhi dengan hitam
  10. Untuk re-sampling, sistem menggunakan bicubic interpolation
  11. Klasifikasi image ke family menggunakan AverageHash (aHash). Ahash adalah perceptual hash yang membuat fingerpring dari gambar input
  12. Image dengan nilai aHash sama akan diberi label sub-type yang sama pada sistem
  13. CNN terdiri dari convolutional layer, pooling layer dan fully connected layer
  14. Sequence convolutional layer menggunakan filter dari ukuran berbeda dan fixed stride one to extract feature maps.
  15. Output setiap convolusi pada 3 layer pertama dimasukan ke fungsi aktivasi ReLU (rectified linear unit) dan operasi max-pooling dengan stride two
  16. Layer final convolusi diikuti dengan sebuah fully-connected layer dengan fungsi aktivasi sigmoid dimana feature map di flattened menjadi sebuah single vector.
  17. Klasifikasi image classification akan memproses melalui susunan layer CNN, dan hasilnya berupa distribusi probabilitas dari semua kelas
  18. Menambahkan sebuah layer tambahan untuk menghitung Manhattan distance L1 distance antara 2 extracted feature vector
  19. Hasilnya diteruskan ke fully connected layer dengan function sigmod dan unit di set menjadi Satu.
  20. Output adalah skor kemiripan malware dengan range [0,1]0
  21. Training Siamese CNN dilakukan dengan mini-batch. Sistem secara random memilih pasangan gambar untuk training tapi menghindari unbalanced number dari pasangan similar dan dissimilar gambar dengan mini batch
  22. Ukuran mini-batch dirandom dari beberapa kelas, sementara pasangan gambar dikontrol dengan setengah ukuran kelas sama den setengah beda kelas
  23. Network menggunakan Adaptive moment estimation optimizer (Adam) untuk mengupdate weight selama iterasi training mini-batch
  24. Proses testing menggunakan M times dari learning task N-way one-shot learning dengan Q times dari prediksi yang benar; Accuracy=(100*Q/M)%
  25. Pada setiap task N-way one-shot learning, sistem memilih anchor image xˆ dari sebuah kelas dan secara random memiliki kelas N untuk membentuk set support
  26. Baseline menggunakan k-NN
  27. Pengujian dilakukan dengan Keras, TensorFlow, matplotlib, numpy, dan scikit-learn, PIL (python imaging library) pada Intel Core i7-8700 HQ CPU @3,2 GHz, 16 GB DDR3 RAM, NVIDIA GeForce GTX 1060M 6GB DDR5 GPU
  28.  

Main result

  1. Menghasilkan performa yang lebih unggul dibandingkan baseline
  2. Hyperparameter network Siamese, mini-batch size=6, Learning rate 0,00006; N-iterations=2000; N-way=1-15 ;N tasks-150
  3. Akurasi 29,56%

 

Limitation:

  1. Nilai akurasi masih rendah
  2. Malware baru nya belum diuji

 

note:

  1. Siamese neural network memiliki performa baik pada one-shot image recognition
  2. ML perlu banyak traning sampel dan long learning period
  3. Essential requerment train waide variety malware samples
  4. New malware model di retrained on whole large dataset
  5. Cost of massive sample collection and periodical re-training too large
  6. One-shot learning adalah training model dengan small set data tp tidak overfitting
  7. siamese networks arsitektur 2 convolutional neural network dengan parameter sama
  8. One-shot image recognition dengan convolutional siamese network mendapat akurasi 92% pada omniglot dataset
  9. binary-to image pertama di 17; pake k-NN dan menghitung euclidean distance 
  10. 16 comparative analysis pake image based texture analysis dynamic 
  11. Agarap dan Pepito [2] pake DL-SVM; CNN-SVM, GRU,SVM dan MLP SVM
  12. one shot learning dari sampel terbatas [5,6] pake framework bayesian, bisa digunakan untuk prediksi future image, Hierarchical bayesian program learning (HBPL) utk decognize handwritten
  13. Memory augmented Neural network (MANN) [23] modif Neural Turing Machine (NTM) dpt learn dr new sampel dan membuat prediksi akurat; eksperimen omniglot, imageNet and one language modeling
  14. Siamese dibuat bromley dan leCun 93 utk solve signature verification written pada tablet pen-input; dua network sama ekstrak feature vector dan mencari similarity dari 2 sampel input. Supervised
  15. Deep-Face system
  16. Ikut [13] to construct Siamese cnn best convolutional architecture

Malware Class Recognition Image-Makandar-ReviewPaper

Paper Title: Malware Class Recognition using Image Processing Techniques

Authors: Aziz Makandar, Anita Patriot

Venue: International Conference on Data Management, Analytics and Innovation 2017

URL : https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8073489

Problem: Penulis malware mengembangkan berbagai teknik untuk mengelabui deteksi malware, misalnya mengubah process pada source code, mutasi instruksi malware dan lain-lain. Perlu pendekatan baru untuk melakukan klasifikasi varian malware.

Contribution:

Mengajukan teknik baru dengan image processing untuk klasifikasi varian malware 

Method/solution

  1. Menggunakan SVM multiclass
  2. Multi-resolution dan wavelett digunakan untuk membangun vektor texture feature menggunakan Gabor Wavelett, GIST dan Discrete Wavelete Transform
  3. Pengujian dilakukan pada Malimg Dataset dengan total 9339 sampel dari 25 family berbeda
  4. Pengujian dilakukan juga pada dataset Malheur Vision Labs yang terdiri dari 3131 sampel malware, dari 24 malware family
  5. 1610 sampel pada training dan 1710 sampel dari 8 malware family pada pengujian 
  6. 8 bit Binary malware  diubah menjadi 1 pixel grayscale
  7. Melakukan normalisasi image dan menjalankan filter pre-processing
  8. Malware dibagi kedalam variant family. Root folder dibuat dengan N number subfolder berdasarkan familynya
  9. Traning malware dilakukan dengan mengambil 25 sampel secara random dari setiap family
  10. Traiing menggunakan seluruh dataset.
  11. Klasifikasi menggunakan KNN, SVM
  12. Langkah yang dilakukan: a) menyiapkan dataset; b) pre-processing data; c) ekstrak feature dengan transformasi wavelett; d) Seleksi feature dengan PCA; e) training; f) klasifikasi data pengujian
  13. Pre-processing dilakukan dengan normalisasi sampel malware 64×64 dan mengguanakn filter
  14. Transformasi discrete wavelet dengan 3 tingkat decomposisi gambar menjadi 64×64 menggunakan db4 wavelet family, koefisien energi efektif diekstrak dari gambar dan disimpan dalam feature vektor
  15. 4 arah koefisien energi diekstrak, kemudian dihitung rata-rata dari feature vector
  16. Feature vector ditraining dan diuji untuk klasifikasi
  17. Menggunakan DWT level 3 dekomposisi dengan db4 wavelet family
  18. Koefisien energy diekstrak ke 56 feature vector yang didapatkan dari sampel malware pada dataset

Main result

  1. Akurasi SVM multiple class adalah 98,88% untuk dataset Malimg
  2. Akurasi pada k-nn dengan k=3 dengan euclidiean distance metric adalah 98,84%
  3. Pada City block didapatkan akurasi 98,78%
  4. Dengan Cosine didapatkan akurasi 97,87% dan Correlation 98,29%

Limitation:

  1. Hanya membahas malware Windows
  2. Spesifikasi mesin tidak disebutkan

Note:

  1. 4 major visualization technique: Malware Tree Map, Malware Thread Graph, Malware Image and VERA [4]
  2. 2 category: system call and image based approach
  3. Feature Characteristic extracted by hidden markov models dan simple substitution distance dengan SVM
  4. GIST digunakan untuk iris identification dan handwritten OCR [19]
  5. Malheur di label dari 6 AV berbeda
  6. Nataraj menggunakan GIST feature 320

Journal di Security dan cryptography

Buat para peneliti keamanan, berikut ini daftar top journal di bidang computer security dan cryptograhy menurut web guide2research:

  1. IEEE Transactions on Dependable and secure computing
  2. Elsevier Computers and security
  3. Elsevier Journal of Information Security and Application
  4. Elsevier Forensic Science International
  5. ACM Transactions on Privacy and Security
  6. Springer International Journal of Information Security
  7. IEEE Security and Privacy
  8. Hindawi Security and Communication Network
  9. Springer Journal of cryptology
  10. IET Information Security
  11. Springer Desings, Codes and cryptography
  12. Taylor & frances Cryptologia
  13. ACM Transactions on cyber-Physical systems
  14. IOS Journal of Computer security
  15. IACR Transactions on symmetric cryptology
  16. Journal of cryptographic engineering
  17. Taylor & Francis Cyber-Physical systems
  18. IET Cyber-Physical systems: Theory and applications
  19. Oxford Journal of cybersecurity
  20. Springer Journal of Computer Virology and Hacking Techniques
  21. Springer Eurasip Journal on Information Security
  22. Inderscience International Journal of Security and networks
  23. Emerald Information and computer security
  24. Rinton press Journal of Cyber security and mobility
  25. Inderscience International Journal of applied cryptography
  26. Uni Skovde Transactions on data privacy
  27. Elsevier Computer Law and security review
  28. IET Cybersystems and robotics

Info lengkapnya bisa dilihat disini: https://www.guide2research.com/journals/computer-security-cryptography

Measuring malware label dynamic-Zhu-Review Paper

Paper Title: Measuring and modeling the label dynamics of online anti-malware engines

Authors: Shuofei Zhu, Jianjun Shi, Limin Yang, Boqin Qin, Ziyi Zhang, Linhai Song, Gang Wang

Venue: Usenix Security Symposium 2020

URL: https://www.usenix.org/conference/usenixsecurity20/presentation/zhu

Problem: Virustotal menyediakan platform scanning sampel malware dari 65 antivirus berbeda. Namun seringkali terdapat perbedaan hasil scan dari berbagai antivirus. Sampel X dapat dideteksi malware oleh sebagian antivirus, sementara dideteksi sebagai benign pada antivirus lainnya. Perbedaan hasil scan ini menyulitkan peneliti dalam melakukan labelilng malware. Penelitian ini mempelajari bagaimana cara peneliti malware mengatasi permasalahan anotasi malware ini.

Contribution: 

  1. Melakukan studi literatur 115 paper untuk melakukan kategorisasi metoda yang digunakan untuk melakukan labeling data dari Virus Total
  2. Mengumpulkan snapshot harian label dari 65 antivirus, sejumlah 14ribu file selama setahun. Dataset ini dianalisa kemudian digunakan untuk melakukan validasi metodologi dari agregasi label. 
  3. Mengukur akibat dari label malware yang tidak konsisten dan tidak stabil. Identifikasi metodologi yang meragukan dan memberi saran riset yang akan menggunakan virustotal.

Method/solution

  1. Mengumpulkan paper hasil penelitian yang menggunakan sampel virustotal dari google scholar. Kemudian difilter berdasarkan level conference nya, diperoleh 115 paper dengan rentang waktu 2008-2018. 
  2. Paper dikategorisasi berdasarkan tipe file yang diteliti: a) PE Files, Android APK, URL dan tipe lain (flash disk, PDF)
  3. Sampel yang diamati adalah sampel malware baru, yang belum pernah disubmit ke virustotal sebelumnya
  4. Menggunakan rescan API untuk men-trigger engine virustotal untuk menganalisa file sampel setiap hari, kemudian menggunakan report API untuk query hasil scanning terbaru setiap hari.
  5. Untuk mendapatkan sampel baru digunakan API distribute. API memberikan informasi tentang file tersebut, seperti hash, apakah sudah pernah disubmit sebelumnya, tipe file dll
  6. Diperoleh 14.423 file PE. 7.197 dilabeli malware oleh setidaknya 1 engine antivirus dan 7226 benign oleh semua engine pada 31 agustus 2018. Data kemudian dibandingkan statusnya setiap hari selama 396 hari.
  7. Semua file 32-bit, 5798 adalah file win32dll sisanya adalah file win32 exe.
  8. 95% file memiliki ukuran 4kb-4mb. 
  9. Melakukan obfuscation malware yang sudah dikenal untuk menjadi binary baru, menggunakan tools codevirtualizer dan themida pada 4 jenis ransomware yang dibagi menjadi 2 set
  10. Setiap set malware terdiri dari 60 sampel malware baru. setiap sampul diuji pada virtual mesin.
  11. Untuk ground-truth benign, dibuat 2 set, total 236 file. Dilakukan obfuscation menggunakan tools yang diatas. Sampel ini dibuat untuk menguji kemungkinan hasil false positive dari virustotal. Set sampel ini dibandingkan dengan  obfuscation malware, karena menggunakan tools yang sama. Scanning dilakukan selama 93 hari
  12. Membuat 156 program PE secara manual, 150 dengan sourcecode coreutils dan mono project. Sampel coreutils adalah unix based yang kemudian dijadikan file PE menggunakan cygwin. Sementara Mono adalah framework .net yang dibuat pada mesin ubuntu. 
  13. Sampel tambahan terdiri dari binutils, notepad++, dan project fleck, sampel diamati selama 70 hari
  14. Setelah preprocessing dari 5 dataset, diperoleh 375.520.749 measurement points. Masing-masing memiliki file-ID, timestamp, nama engine dan label. 
  15. Setelah dilakukan filtering diperoleh 343.585.060 measurement points. 341.668.521 dari dataset utama
  16. Melakukan pemodelan perubahan label malware, dengan signal logic 0 dan 1.

Main result

  1. 22 paper tidak menjelaskan proses agregasi. 93 paper menggunakan pendekatan labelung yang umum digunakan.
  2. Metode agregasi berbasis threshold-based. 82 dari 93 paper menggunakan threshold t untuk memberi label malware. t adalah jumlah engine yang memberi label malicious.
  3. 50 paper menggunakan t=1; maksudnya bila ada 1 antivirus yang memberi label malicious maka file diberi label malware
  4. 24 penelitian menggunakan t>1; 8 penelitian menggunakan t sebagai rasio. 2 paper menggunakan t=40 dan 4 paper menggunakan t=50%
  5. Metode hanya memilih engine antivirus tertentu. 10 penelitian menggunakan cara ini, namun tidak dijelaskan alasan pemilihannya, tanpai kriteria jelas.
  6. Metode tanpa agregasi. 10 penelitian menggunakan virustotal dengan tujuan lain, diantaranya untuk melakukan training sistem usulannya, sebagai pembanding, membuktikan kekurangan virustotal, maupun untuk pengujian obfuscation
  7. Mayoritas penelitian (104/115) hanya mengambil snapshot sekali dari hasil label virus total. Hanya sedikit yang membandingkan snapshot dari rentang waktu tertentu, mulai dari 10 hari sampai 2 tahun. Ada juga yang melakukan subit file berulang kali untuk membandingkan hasil scan
  8. Ditemukan fenomena hazard flip, yaitu label sebuah sampel berubah, kemudian kembali lagi ke label awal pada hari berikutnya. 010 atau 101.
  9. Diperoleh 1.760484 hazard flip serta 811.325 non hazard flip (hanya 01 atau 10)
  10. Lebih dari setengan flips pada virustotal adalah hazard flips.
  11. Flips dan hazard yang diamati tersebar pada berbagai macam files, tanggal dan engines.
  12. Update model Engine adalah penyebab utama flips. Namun inkonstitetnsi selama update engine dan engine non-determisitc menjadi penyebab dari berbagai flips
  13. Menunggu periode waktu tertentu tidak menjamin label pada mesin tertentu menjadi stabil
  14. Flips dapat mempengaruhi hasil agregasi secara signifikan pada saat threshold t terlalu kecil atau terlalu besar. Menggunakan threshold pada range 2-39 membuat agregasi label lebih stabil
  15. Ada kelompok engine yang keputusan labelingnya saling berhubungan.
  16. Terdapat mesin antivirus yang hasil scannya mendapat pengaruh dari engine lainnya (active influence), termasuk dalam flip
  17. Secara keseluruhan passive influence lemah. Passive influence menjadi kuat dalam kasus label benign berubah menjadi malicious
  18. Obfuscation pada sampel benign dapat dengan mudah menimpulkan false positive, termasuk pada engine dengan high reputation
  19. Nilai threshold kecil dapat menyeimbangkan nilai presisi dan recall, selama tidak ada obfuscation pada file benign (<15)
  20. Terdapat inkonsistensi antara versi desktop dan versi online pada semua engine. Pada hampir semua vendor, engine virustotalnya mampu mendeteksi lebih banyak malware dibandingkan versi desktopnya 
  21. Bila sampel malware menggunakan teknik obfuscation disarankan tidak menggunakan threshold tapi menggunakan engine yang memiliki performa baik pada file obfuscated
  22. Beberapa high-reputation engine yang digunakan pada beberapa penelitian: Kaspersky, symantec, avg, ikarus, mcafee, microsoft, eset-nod32, sophos. F-Secure menghasilkan akurasi yang rendah
  23. Beberapa high reputation engine memiliki performa yang tidak baik dalam menangani obfiscation benign file, banyak menghasilkan false positive diantaranya  AVG, Mcafee, Microsoft, Sophos, Symantec
  24. 3 Engine dengan angka flips terbanyak adalah Microsoft, Fortinet dan Tencent.
  25. Engine yang memili label correlations pada file APK yaitu GData, Bitdefener, ad-aware, Emsisoft dan MicroWorld-escan.

Limitation:

  1. sampel memiliki bias terhadap teknik obfuscation
  2. Sampel malicious hanya ransomware
  3. Jumlah sampel ground-truth relatif kecil
  4. Diversifikasi dataset

Peneliti menggunakan virustotal untuk melakukan labeling datasetnya atau, querying/scanning API virustotal untuk menguji sistemnya. 43 paper dipublish pada 4 besar conference security yaitu S&P, CCS, Usenix dan NDSS. PE adalah tipe yang paling populer.

Virus Total menyediakan fitur file scanning dan URL scanning. Interface scanningnya terhubung dengan lebih dari 70 vendor antivirus.  Vendor ini melakukan sharing enginnya dengan virus total atau dijalankan sebagai paket software atau menyediakan online API. 

Virustotal dan vendor selalu mengupdate engine anti malwarneya, sehingga label sebuah sampel dapat berubah. Selain itu juga bisa saja terjadi perbedaan hasil deteksi dari berbagai perusahaan antivirus. Untuk itu peneliti melakukan agregasi hasil deteksi.

Peng et.al menguji engine scanning url untuk deteksi phishing. Kantchelian et.al mengusulkan model machine learning untuk melakukan agregasi label virustotal. Penelitian ini mengambil asumsi label. Selain Malware scanning, Virustotal juga menyediakan informasi family dari sampel malware. Peneliti menemukan bahwa beberapa engine antivirus yang berbeda bisa memasukan sebuah sampel malware ke dalam family yang berbeda. 

Ransomware dipilih karena, sangat mudah untuk melakukan verifikasi maliciousnesnya secara manual, misalnya melakukan enkripsi, menampilkan pesan ransim. Selain itu sebagian besar engine 57/60 mampu mendeteksi malware.

Virusttotal menerima 1 juta submission sampel setiap hari. Data penelitian ini dishare pada link

 

 

 

Hunting Stealthy Malware-Wang-Review Paper

Paper Title: You are what you do: Hunting Stealthy Malware via Data Provenance Analysis

Authors: Qi Wang, Wajih Ul Hasan, Ding Li, Kangkook Jee, Xiao Yu, Kexuan Zou, Junghwan Rhee, Zhenzhang Chen, Wei Cheng, Carl A. Gunter, Haifeng Chen

Venue : Network and Distributed Systems Security (NDSS) Symposium 2020

URL: https://dx.doi.org/10.14722/ndss.2020.24167

Problem: Bagaimana mendeteksi malware stealthy? Malware yang menggunakan berbagai teknik untuk mengelabui antivirus dengan menyerupai aplikasi benign.

Contribution : 

  1. Merancang ProvDetector, sebuah provenance-based system untuk mendeteksi stealthy malware yang menggunakan teknik impersonation
  2. Untuk meningkatkan akurasi dan efektifitas, mengusulkan sebuah algoritma novel path selection untuk identifikasi malicous part pada provenance graph pada sebuah proses
  3. Merancang sebuah novel neural embedding dan machine learning pipeline yang secara otomatis membangun sebuah profile behaviour untuk setiap program dan identifikasi proses anomali
  4. Melakukan pengujian sistematis Provdetector dengan malware

Method/solution:

  1. ProvDetector terdiri dari 4 tahapan: graph building, representation extraction, embedding dan anomaly detection
  2. ProvDetector melakukan model operasi normal dari sebuah sistem
  3. Menggunakan casual path sebagai sebuah feature yang membedakan bagian malicious dan benign dari data provenance.
  4. Provdetector memilih sebuah subset casual paths dari sebuah provenance graph untuk menunjukan masalah dependency explosion dan meningkatkan kecepatan training dan deteksi
  5. Melakukan konfigurasi untuk melakukan monitoring pada aplikasi dan mendeteksi bila aplikasi tersebut dibajak oleh stealthy malware. 
  6. Deploy sebuah monitoring agent pada host, mengumpulkan provenance data dari sisten dan menyimpannnya pada sebuah database sentral. 
  7. Memiliki 2 mode: training dan deteksi
  8. Dari sebuah  p , PROVDETECTOR membangin  provenance graph G(p) =< V, E > sebagai sebuah labeled temporal graph menggunakan data yang disimpan di database
  9. nodes V adalah entitas sistem yang labelnya adalah atributnya,  E adalah edges dimana  labelnya adalah  relations dan timestamps.
  10. Setiap  node V merupakan salah satu dari: processes, files atau sockets.
  11. Setiap edge e pada E adalah e = {src,dst,rel,time}.
  12. Pembangunan  provenance graph G(p) dimulai dengan  v == p.
  13. Kita tambahkan edge e dan source node src dan destination node pada graph seperti e.src ∈ V atau e.dst ∈ V .
  14. Setelah provenance graph terbangun, dilakukan ekstraksi representation. Untuk mencari representasi dari graph untuk membedakan malicious dan benign
  15. Casual path sebagai feature dari graph. causal path λ dari sebuah dependency graph G(p) sebagai sequence berurutan dari sebuah sistem (edges) {e1,e2,…,en} pada G(p), dimana ∀ei,ei+1 ∈ λ, ei.dst == ei+1.src dan ei.time < ei+1.time.
  16. Untuk menemukan  top K rarest paths, digunaian regularity score dari path λ = {e1,e2,…,en} 
  17. Embedding, menambahkan path pada model deteksi anomali, menggunakan intuisi, embedded learning dan final decision making
  18. Menggunakan model PV-DM seperti pada doc2vec. Metoda ini adalah self-supervised
  19. Deteksi anomali menggunakan model Local Outlier Factor (LOF). LOF adalah metoda density based. Sebuah titik dikatakan outlier jika dia memiliki sbuah local density yang lebih rendah dari tetangganya
  20. Training dilakukan pada mesin Intel core i7-6700 Quad-Core Processor (3.4 GHz) and 32 GB RAM running Ubuntu 16.04 OS

Main result: 

  1. Akurasi deteksi antara 0,952-0,965
  2. Recall range antara 0,965-1
  3. F1 score range 0,961-0,982
  4. ProvDetector lebih baik dibandingkan metode deteksi Strawman yang menghasilkan F! 0,78 dengan padalah 3%
  5. Performa lebih baik dibandingkan metode graph2vec dan path nodes averaging
  6. Training oada datan 30 ribu paths membutuhkan waktu 94 detik pada model doc2vec dengan ukuran embedding vector 100 dan epoch 100. Sementara pada LOF hanya dibutuhkan 39 detik 
  7. Rata2 dibutuhkan 5 detik untuk membangun provenance graph dan 2 detik untuk memilik top 20 path dari graph. Perlu 1 milideteik untuk embed path ke vector dan 0,06 mikrodetik untuk deteksi model
  8. Mampu mendeteksi sampel yang menggunakan teknik Anti-VM. 26% sampel menggunakan teknik anti-VM. 
  9. 70% path dari proses yang dibajak tidak terdeteksi sebagai malware

Limitation:

  1. Offline detector, atau tidak bekerja secara real-time
  2. Hanya diuji pada sistem operasi windows
  3. Hanya menddunakan 2 model doc2vec dan LOF
  4. Tidak diuji dengan advarsarial malware
  5. Tidak diuji tentang  polusi data