Conference PaperPDF Available

Utilization and Comparision of Convolutional Neural Networks in Malware Recognition

Authors:

Abstract

Advances in Industry 4.0, IoT and mobile systems have led to an increase in the number of malware threats that target these systems. The research shows that classification via the use of computer vision and machine learning methods over byte-level images extracted from malware files could be an effective static solution. In this study, in order to detect malware, we have employed various contemporary convolutional neural networks (Resnet, Inception, DenseNet, VGG, AlexNet) that have proven success in image classification problem and compared their predictive performance along with duration of model production and inference. In addition, a novel malware data set involving 8750 training and 3644 test instances over 25 different classes was proposed and used. As a result of the experiments carried out with 3-channel (RGB) images obtained, the highest success in terms of accuracy was determined as 97.48% by using DenseNet networks.
Kötücül Yazılımların Tanınmasında Evrişimsel Sinir
Ağlarının Kullanımı ve Karşılaştırılması
Utilization and Comparision of Convolutional Neural
Networks in Malware Recognition
Ahmet Selman Bozkir, Ahmet Ogulcan Cankaya, Murat Aydos
Hacettepe Üniversitesi Bilgisayar Mühendisliği Bölümü, Ankara, Türkiye
E-mail: selman@cs.hacettepe.edu.tr
Özetçe—Endüstri 4.0, IoT ve mobil sistemlerdeki gelişmeler
beraberinde bu tür sistemleri hedef alan kötücül yazılım
tehditlerinde artışa neden olmaktadır. Yapılan araştırmalar
kötücül yazılım dosyalarından byte düzeyinde çıkarılmış
imgelerin bilgisayarlı görü ve makine öğrenimi yöntemleriyle
sınıflandırılmasının etkin bir statik çözüm olabileceğini
göstermektedir. Bu çalışmada kötücül yazılımları tespit amaçlı
olarak görsel sınıflandırma probleminde başarısı kanıtlanmış
modern evrişimsel sinir ağları (Resnet, Inception, DenseNet,
VGG ve AlexNet) kullanılarak kestirim performansları ile
birlikte model üretme ve tahmin süreleri karşılaştırılmıştır.
Bununla birlikte çalışmada 8750 eğitim, 3644 test örneği içeren
25 sınıflı özgün bir kötücül yazılım veri kümesi önerilmiş ve
kullanılmıştır. Elde edilen 3 kanallı (RGB) görsellerle yapılan
deneyler sonucunda doğruluk bağlamında en yüksek başarı
DenseNet ağlarında 97.48% olarak tespit edilmiştir.
Anahtar Kelimeler kötücül yazılım; kötücül yazılım tespiti;
evrişimli sinir ağları; bilgisayarlı görü; gözetimli öğrenme.
Abstract Advances in Industry 4.0, IoT and mobile systems
have led to an increase in the number of malware threats that
target these systems. The research shows that classification via
the use of computer vision and machine learning methods over
byte-level images extracted from malware files could be an
effective static solution. In this study, in order to detect malware,
we have employed various contemporary convolutional neural
networks (Resnet, Inception, DenseNet, VGG, AlexNet) that have
proven success in image classification problem and compared
their predictive performance along with duration of model
production and inference. In addition, a novel malware data set
involving 8750 training and 3644 test instances over 25 different
classes was proposed and used. As a result of the experiments
carried out with 3-channel (RGB) images obtained, the highest
success in terms of accuracy was determined as 97.48% by using
DenseNet networks.
Keywords malware; malware detection; convolutional neural
networks; computer vision; supervised learning.
I. GİRİŞ
Son yıllarda gerek internet gerekse de bilgi tabanlı sistemler
başta olmak üzere IoT (Internet of Things) ve mobil
cihazlardaki gelişmeler beraberinde kötücül yazılımlarda
(malware) üssel bir artışa neden olmuştur. Kötücül yazılımlar
virüs, Truva atı, reklam gösterici gibi genellikle zararlı amaçlar
taşıyan ve saldırganlara çeşitli faydalar sağlayan yazılımlardır.
Aktas ve Sen [1]’e göre kötücül yazılım geliştirmede temel
amaçların başında haksız finansal kazanç gelmektedir. Bu
nedenle ortaya çıkan KY sayısı ve çeşitliliği her geçen gün
artmaktadır [2]. Bir örnek vermek gerekirse [2], 2016 yılında
bir önceki yıla nazaran 36% artışla 430 milyon farklı KY
örneği tespit edilmiştir.
Kötücül yazılımların tespiti ve tanınmasında genel olarak
statik ve dinamik çözümleme yöntemleri ön plana çıkmaktadır.
Statik çözümlemeler zararlı kodun çalıştırılmaksızın ihtiva
ettiği ikili (binary) dizilimleri, kütüphane çağrıları, opcode
(operational code) sıklık dağılımları, akış kontrol çizgeleri gibi
örüntüleri keşfetmeyi ve bu örüntüler üzerinden tanımlayıcı bir
imza oluşturmayı hedefler [3]. Öte yandan dinamik çözümleme
yaklaşımında potansiyel zararlı kod bir kum kutusu ya da sanal
makine üzerinde çalıştırılarak davranışsal örüntüleri ortaya
konmaktadır. Bu noktada, statik çözümleme kaynak tüketimi
yönünden etkin ve çok daha hızlı sonuçlar ortaya koyarken
polimorfik ve metamorfik zararlıların tespitinde yetersiz
kalabilmektedir. Diğer yandan dinamik çözümleme bu türden
zafiyetlerin önüne geçerken zaman ve kaynak tüketici
olmaktadır.
Statik çözümleme tabanlı bir yaklaşım olarak Nataraj v.d.
[4] kötücül yazılımlara ait ham ikili dosyalardaki byte
dizilimlerinin gri ölçekli resimlere dönüştürülmesi sonrasında
bilgisayarlı görü ve makine öğrenimi yöntemlerinden
yararlanılarak sınıflama yapılabilirliğini göstermiştir. Bu
kavramın dayandığı temel fikir, kötücül dosyaların ait oldukları
familyalarda genellikle küçük değişiklikler göstermesidir.
Nataraj v.d [4] yaptıkları ilk çalışmada KY görsellerinden elde
ettikleri GIST betimleyicilerinden yararlanarak çok sınıflı KY
tanıması yapmışlardır. Sonraki yıllarda bilgisayarlı görü
alanında derin öğrenmenin önemli bileşenlerinden biri olan
evrişimsel sinir ağlarının (convolutional neural networks
cnn) önerilmesi ve yaygınlaşmasıyla birlikte KY görsellerinin
analizinde CNN ağlarının kullanımı gündeme gelmiştir.
Güncel çalışmalarda [5,6] ham KY görselleri üzerinden uçtan
uca eğitim gerçekleştirilerek doğruluk (accuracy) ölçeğinde
97%’yi aşan başarılar yakalanmıştır. Keza, yine Saxe ve Berlin
[7] derin öğrenme yöntemlerinin bahsi geçen problem üzerinde
etkinliğini ölçümlemişlerdir.
İlgili çalışmalara bakıldığında CNN kullanılarak yapılan
araştırmaların büyük kısmının VGG [9] ve Alexnet [8] ağları
veya özgün ağ mimarileri üzerinde gerçekleştirilmiş olduğu
gözlemlenmektedir. Ne var ki, CNN yöntemleri günümüze
değin hız kaybetmeden gelişmiş, daha etkin ağ tasarımları daha
az parametre içerecek şekilde tasarlanmış ve önerilmiştir. Bu
çalışmada 2012 yılından bu yana alan yazınına girmiş ve doğal
görsellerin sınıflandırılması probleminde başarısı kanıtlanmış
modern CNN mimarilerinin kötücül yazılım sınıflandırmadaki
etkinliği araştırılmış ve incelenmiştir. Bu bağlamda bu
çalışmanın katkıları şu şekilde sıralanmaktadır:
AlexNet ve VGG ağlarından farklı olarak Inception
[10], ResNet [11] ve DenseNet [12] mimarileri farklı
varyasyonlarıyla birlikte problem uzayında denenerek
başarımları ve eğitim süreleri ölçülmüştür.
Gri ölçekli görsellerin kullanımı terkedilerek 3 kanallı
RGB görseller elde edilmiş ve deneylerde
kullanılmıştır.
Deneylerin yapılabilmesi adına “MaleVis” [13] ismi
verilmiş olan özgün bir kötücül yazılım veri kümesi
kurulmuştur ve gelecek çalışmalar için erişime
açılmıştır. Bu veri kümesi farklı familyalara ait kötücül
yazılımların ham PE (portable executable) dosyaları ile
bu dosyalardan elde edilen farklı çözünürlükteki
imgeleri içermektedir.
Bildirinin geri kalanı şu şekilde düzenlenmiştir. Bölüm 2’de
çalışmanın kullandığı yöntem ve araçlar kısaca tanıtılmıştır.
Bölüm 3’de veri kümesine ait ayrıntılar paylaşılmıştır. Bölüm
4’de deney tasarımı ve sonuçlar sunulmuştur. Son kısımda
sonuç bölümü yer almaktadır.
II. YÖNTEM VE ARAÇLAR
A. Evrişimsel Sinir Ağları
İlk olarak 2012 yılında Krizhevksy v.d. [8] tarafından doğal
görüntülerin sınıflandırılması probleminde önerilen (Alexnet)
ve elde ettiği başarıyla devrim yaratan evrişimsel sinir ağları
zaman içerisinde nesne tanıma, segmentasyon ve hatta metin
sınıflandırma gibi problemlere uyarlanmıştır. İlerleyen yıllar
içerisinde bu yeni nesil yapay sinir ağları önceleri derinlik
anlamında gelişme göstermiştir. Oxford Üniversitesi Visual
Geometry Group bünyesinde önerilen VGG ağları (Vgg-11,
Vgg-16, Vgg-19) [9] daha yüksek kestirim performansı
göstermekle birlikte gerekli eğitim süresi ve parametre sayısı
bakımından maliyetlidir. Öte yandan VGG ağları yeteri sayıda
eğitim verisi bulunmadığı takdirde kaybolan eğim (vanishing
gradient) problemine karşı duyarlılık taşımaktadır. Bu
problemleri aşmak adına 1×1, 3×3 ve 5×5 boyutunda filtrelerin
birlikte kurgulandığı “inception” bloklarını içeren 22 katmanlı
GoogleNet ağı Szegedy v.d. [10] tarafından önerilmiş ve
ImageNet 2015 yarışmasında birincilik kazanmıştır. İlerleyen
dönemde daha derin ağların kestirim performansına olumlu
katkı koyduğu gözlemlenmiş ancak kaybolan eğim problemini
aşabilmenin ve 100 katmandan daha derin ağları üretebilmenin
bir yolu olarak birim matrislerinin evrişim operasyonu
sonrasında toplanmasına dayalı Resnet [11] mimarisi
önerilmiştir. Bu yaklaşımdan farklı olarak Huang v.d. [12] her
katman bloğunun diğer katman bloklarına bilgi taşımasına izin
veren yoğun (dense) blok ve geçiş (transition) katmanlarının
peşi sıra birleştirilmesi kavramını önermiştir. Bu yaklaşım
DenseNet mimarisinin temelini oluştururken elde edilen nitelik
haritalarının Resnet mimarisindeki toplama işlemi yerine
birleştirme (concatanation) işlemine sokulmasına dikkat
edilmelidir. Sayfa sınırı olmasından dolayı okuyucunun daha
ayrıntılı bilgi için ilgili numaralandırılmış kaynakları
incelemeleri önerilmektedir.
B. Ön İşlemler
Bu çalışmada Şekil 1 de gösterildiği üzere farklı CNN
mimarilerinin kötücül yazılımlardan elde edilen imgeler
üzerindeki sınıflama başarımları gözlemlenmeye çalışılmıştır.
Bu nedenle ilk olarak ikili dosyaların imgelere dönüştürülmesi
gerekmiştir. Bu noktada https://github.com/ESultanik/bin2png
adresinde yer alan ve Python dilinde kodlanmış olan “bin2png”
betiğinden yararlanılmıştır. Bin2png betiği kendisine verilen
herhangi bir ikili dosyayı PNG biçimine kayıpsız olarak
dönüştürebilmektedir. Ancak ilgili betiğin özgün hali Python
2.7 platformuna göre kodlanmıştır. İlk olarak daha etkin bir
kullanım için özgün betik tarafımızca Python 3 platformuna
uyumlandırılmış ve veri kümesinde yer alan tüm KY sınıflarına
ait PNG imgeler oluşturulmuştur. İmgelerin oluşturulma
aşamasında görsellerin genişliği 224 veya 300 piksel olacak
şekilde ayarlanmıştır. Daha sonrasında farklı CNN ağlarının
farklı boyuttaki girdi ihtiyaçlarına yönelik birbirinden farklı
uzunluktaki imgeler OpenCV [14] kütüphanesi üzerinde 8×8
komşuluğu dikkate alan Lanczos interpolasyonu yöntemi
kullanılarak 224×224 ve 300×300 boyutuna ölçeklendirilmiştir.
Böylelikle ölçeklendirme aşamasında imgelere ait piksellerdeki
kaybın minimize edilmesi hedeflenmiştir. Elde edilen
imgelerden oluşan veri kümesi genel olarak 70% eğitim – 30%
geçerleme olacak şekilde bölümlenerek nihai veri kümesi
oluşturulmuştur.
Şekil. 1. Analiz sürecinin akış çizeneği
C. Derin Öğrenme Kütüphane ve Çatıları
Çalışma boyunca testleri gerçekleştirilen CNN modelleri
Pytorch v0.4 [15] ve Caffe v0.16.1 [16] derin öğrenme çatıları
kullanılarak eğitilmiştir. Eğitimlerde kullanılan ağların ön
eğitimli modelleri yerine baştan (from scratch) itim tercih
edilmiştir. Inception (GoogleNet) ağı haricindeki tüm diğer
ağlar Pytorch içerisinde tanımlı olduğundan bu ağların
eğitiminde ve testlerinde Pytorch çatısından faydalanılmıştır.
III. VERİ KÜMESİ
Bu belgede bahsi geçen çalışmaya başlanmadan önce ilgili
çalışmaların kullandıkları veri kümeleri incelendiğinde bu veri
kümelerinin ham ikili dosyaları içermediği veya gri ölçekli
imgelerden oluştukları gözlenmiştir. Dolaysıyla bu içerikler
üzerinden çalışmanın yürütülmesi olanaksız hale gelmiştir. Bu
nedenle çalışma için kötücül yazılım laboratuvarı bulunan ve
bu alanda faaliyet gösteren bir siber güvenlik firmasıyla ortak
çalışılarak 25 farklı familyadan oluşan ham PE dosya kümesi
derlenmiştir. Derlemdeki dosyalar 2017-2018 yıllarında ortaya
çıkan kötücül yazılımlardan elde edilmiştir. Her bir familya
için 500 veya yakın sayıda KY örneği içeren ve MaleVis –
Malware Evaluation with Vision” [12] olarak adlandırılan
veri kümesi dengeli bir dağılıma sahiptir. Aşağıda yer alan
Tablo 1 de veri kümesinde yer alan kötücül yazılımların
familya, kategori ve sayıca dağılımları sunulmuştur. Tabloda
görüleceği üzere eğitim ve test örnekleri 70%-30% şeklinde
oluşturulmuştur. Veri kümesi toplamda 8750 eğitim, 3644 test
örneği barındırmaktadır.
TABLO I. MALEVIS VERİ KÜMESİ İÇERİĞİ
No
Sınıf İsmi
Kategori
Eğitim/Test
Örneği Sayıları
1
Win32/Adposhel
Adware
350/144
2
Win32/Agent-fyi
Trojan
350/120
3
Win32/Allaple.A
Worm
350/128
4
Win32/Amonetize
Adware
350/147
5
Win32/Androm
Backdoor
350/150
6
Win32/AutoRun-PU
Worm
350/146
7
Win32/BrowseFox
Adware
350/143
8
Win32/Dinwod!rfn
Trojan
350/149
9
Win32/Elex
Trojan
350/150
10
Win32/Expiro-H
Virus
350/150
11
Win32/Fasong
Worm
350/150
12
Win32/HackKMS.A
Trojan
350/149
13
Win32/Hlux!IK
Worm
350/150
14
Win32/Injector
Trojan
350/145
15
Win32/InstallCore.C
Adware
350/150
16
Win32/MultiPlug
Adware
350/149
17
Win32/Neoreklami
Adware
350/150
18
Win32/Neshta
Virus
350/147
19
Win32/Regrun.A
Trojan
350/135
20
Win32/Sality
Virus
350/149
21
Win32/Snarasite.D!tr
Trojan
350/150
22
Win32/Stantinko
Backdoor
350/150
23
VBA/Hilium.A
Virus
350/150
24
Win32/VBKrypt
Trojan
350/146
25
Win32/Vilsel
Trojan
350/146
MaleVis veri kümesi gerek ham KY dosyalarını gerekse de
RGB kanallı PNG imgelerini doğrudan derin öğrenme
kütüphanelerinin kullanılabileceği şekilde kurulmuştur.
Bununla birlikte ilgili veri kümesi yapılacak sonraki çalışmalar
için araştırmacıların ücretsiz kullanımına açılmıştır.
IV. DENEY TASARIMI VE SONUÇLAR
A. Deney Süreci
Bu çalışmada daha önceki kesimlerde belirtildiği üzere
AlexNet, VGG (11 ve 16 katmanlı), Resnet (18, 34, 50 ve 101
katmanlı) Inception (sürüm 1 ve 3) ve Densenet (121, 169 ve
201 katmanlı) CNN mimarileri kullanılmıştır. Yapılan
eğitimlerin ilk basamağında tüm evrişimsel filtreler rassal
ağırlıklarla başlatılmıştır. Gerçekleştirilen deneylerde öğrenme
katsayısı (learning rate) 0.01, sönümleme katsayısı
(momentum) 0.8, adım sayısı (step size) 10 olarak belirlenmiş
ve tüm eğitimler 60 dönemi (epoch) kapsayacak şekilde
uygulanmıştır. Ayrıca geri yayılım eniyilemesinde SGD
(Stochastic Gradient Descent) yöntemi benimsenmiştir.
Deneyler,16 GB DDR4 hafızaya, Intel i7 6700K işlemciye,
512 GB SSD sabit diske ve NVidia GTX 1060 6GB GPU’ya
sahip bir bilgisayar üzerinde GPU tabanlı gerçekleştirilmiştir.
Farklı CNN mimarilerinin farklı bellek gereksinimleri
bulunmasından ötürü tüm CNN modelleri kullandığımız
GPU’nun belleğine maksimum derecede sığacak yığın
boylarında (batch size) eğitilmiştir.
B. Sonuçlar ve Tartışma
Gerçekleştirilen deneylere ait sonuçlar Tablo 2’de
sunulmuştur. Sonuçlar elde edilen en yüksek doğruluk
(accuracy), her bir dönemin eğitim ve geçerleme süresi, toplam
eğitim süresi ve yığın sayısını kapsamaktadır. Buna göre
problem uzayında doğruluk bağlamında en başarılı mimari
97.48% doğrulukla Densenet türevleri olmuştur. Ayrıca
Densenet ağları diğer ağlara nazaran çok daha kısa sürede
yakınsayabilmiştir. Aşağıda yer alan Şekil 2’de geçerleme
verisi üzerinde Densenet 201 ağıyla elde edilmiş örnek bir
doğruluk tablosu sunulmuştur. Densenet mimarisinin katman
sayısındaki farklılıklar süreleri etkilemekle birlikte geçerleme
başarısında bir farklılığa neden olmamıştır. Bu bağlamda 121
katmanlı DenseNet mimarisinin kullanımı yeterli
olabilmektedir.
1) Aksis tanımlamaları: 8 büyüklüğünde punto kullanınız.
Kısaltma kullanmayınız. Birim ekleyecekseniz “Sıcaklık/K”
değil, “Sıcaklık (K)” şeklinde olmalıdır.
Şekil. 2. DenseNet201 ağıyla elde edilen doğruluk tablosu
Başarı anlamında Resnet18 mimarisi çok daha az katmana
sahip olmakla birlikte 97.18% doğruluk ile ikinci sırada yer
almıştır. Resnet18 ağının parametre sayısındaki tutumluluğu,
hızlı eğitimi ve toplamda 3644 imgeyi 5 saniye gibi kısa sürede
geçerleyebilmesi problem uzayında tercih edilebilir bir mimari
olduğunu göstermektedir. VGG ağları daha önceki
çalışmalarda kullanılmış ve başarısı kanıtlanmış ağlar olmakla
birlikte daha yeni ağlar karşısında geride kalmaktadır.
Sonuçların ortaya koyduğu iki önemli bulgu bulunmaktadır.
İlki kötücül yazılımların tanınması probleminde kullanılan
ağlar bağlamında evrişimsel katman sayısının başarım üzerinde
ciddi bir etki yaratamadığıdır. İkincisi ise KY imgelerinde
çıkarılan nitelik ve nitelik haritalarından elde edilen bilginin ilk
katmanlardan katmanlara kadar taşınabilmesinin ve
birleştirilebilmesinin başarımda pozitif etki göstermesidir.
Densenet mimarisinin diğer ağlara nazaran daha ilk
dönemlerde hızlı yakınsaması ve gösterdiği başarının altında
yatan temel nedenin bu olduğunu düşünmekteyiz.
V. SONUÇ
Bu çalışmada kötücül yazılımların tanınması probleminde
2012 yılından bugüne değin geliştirilmiş birçok CNN mimarisi
önerilen bir veri kümesi üzerinde test edilerek sonuçları ortaya
koyulmuştur. Yapılan analizler neticesinde Densenet ve Resnet
mimarilerinin diğer mimarilere göre daha başarılı olduğu, 3
kanallı RGB imgelerin problemin çözümünde sorun
yaratmadığı gözlemlenmiştir. Bununla birlikte gelecek
çalışmalarda problemin açık küme (open-set) problemi haline
dönüştürülerek, kötücül yazılımlarla birlikte güvenilir
yazılımların tek bir çatı altında sınıflandırılabilmesinin
araştırılması planlanmaktadır.
BİLGİLENDİRME
Yazarlar, bu çalışmada kullanılan kötücül yazılım veri
kümesinin temininde Comodo Inc. firmasına teşekkürlerini
sunar.
KAYNAKLAR
[1] K. Aktas and S. Sen,“UpDroid: Updated Android Malware and Its
Familial Classification",in Nordsec'18 2018.
[2] S. Ni, Q. Qian and R. Zhang, "Malware identification using visualization
images and deep learning", Computers & Security, vol. 77, pp.871-885,
2018. .
[3] L. Nataraj, D. Kirat, B.S. Manjunath, G. Vigna, “SARVAM: Search and
RetrieVAl of Malware”, in NGMAD’13, 2013.
[4] L. Nataraj, S. Karthikeyan, G. Jacob and B.S. Manjunath, “Malware
Images: Visualization and Automatic Classification”, in VizSec’11,
2011.
[5] K. Özkan, Ş. Işık and Y. Kartal, “Evaluation of Convolutional Neural
Network Features for Malware Detection”, In 6th International
Symposium on Digital Forensic and Security, 2018.
[6] S. Yue, “Imbalanced Malware Images Classification: a CNN based
Approach”, arXiv: 1708.08042, 2017.
[7] J.Saxe and K. Berlin, “Deep neural network based malware detection
using two dimensional binary program features”, In 10th International
Conference on Malicious and Unwanted Software, 2015.
[8] A. Krizevsky, I. Sutsever and G. Hinton, “Imagenet classification with
deep convolutional neural networks. In Advances in neural information
processing systems, pp. 1097-1105, 2012.
[9] K. Simonyan ve A. Zisserman, “Very deep convolutional network for
large scale image recognition”, arXiv preprint arXiv:1409.1556, 2014.
[10] C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed, D. Anguelov, D.
Erhan, V. Vanhoucke and A. Rabinovich, “Going deeper with
convolutions, In Proceedings of the IEEE Conference on Computer
Vision and Pattern Recognition, pp. 1-9, 2015.
[11] K. He, X. Zhang, S. Ren and J. Sun, “Deep residual learning for image
recognition”, In Proceedings of the IEEE Conference on Computer
Vision and Pattern Recognition, pp. 770-778, 2016.
[12] G. Huang, Z. Liu, L.V.D. Maaten, K. Q. Weinberger, “Densely
connected convolutional network”, arXiv preprint arXiv: 1608.06993,
2016.
[13] Malevis Dataset, https://web.cs.hacettepe.edu.tr/~selman/malevis/
[14] OpenCV, https://opencv.org/ (8.2.2019 tarihinde ziyaret edilmiştir)
[15] Pytorch, https://pytorch.org/ (8.2.2019 tarihinde ziyaret edilmiştir)
[16] Caffe, http://caffe.berkeleyvision.org/ (8.2.2019 tarihinde ziyaret
edilmiştir)
TABLO II. FARKLI CNN MİMARİLERİNDEN ELDE EDİLEN EN YÜKSEK DOĞRULUK SONUÇLARI VE DİĞER ÖZELLİKLER
-Mimari
Doğruluk (Geçerleme)
Epoch Süreleri (Eğitim/Geçerleme)
Toplam Eğitim Süresi
Yığın Sayısı
AlexNet
94.43%
11/2 saniye
13 dakika
128
VGG11
96.46%
132/16 saniye
153 dakika
16
VGG16
96.10%
242/31 saniye
278 dakika
16
Resnet18
97.17%
39/5 saniye
45 dakika
64
Resnet34
96.84%
76/9 saniye
84 dakika
48
Resnet50
97.03%
119/16 saniye
136 dakika
16
Resnet101
97.09%
212/26 saniye
233 dakika
12
Inception (Googlenet)
96.38%
42/8 saniye
50 dakika
32
Inception V3
96.62%
180/24 saniye
214 dakika
12
Densenet121
97.48%
122/16 saniye
138 dakika
12
Densenet169
97.48%
169/23 saniye
192 dakika
8
Densenet201
97.48%
217/29 saniye
247 dakika
8
... Visualization of malware has been recently used as a new and efficient technique for malware research. Figure 1 shows the malware images of various classes of Malimg [10], Microsoft BIG 2015 [11], and MaleVis [12] datasets. The preexisting binary patterns are being substantially reused to achieve variations, generating new patterns. ...
... The feedforward approach is maintained by acquiring additional inputs from the previous layers and passes on feature maps of the current layer to all succeeding layers. The proposed model was practically assessed using the TensorFlow Python library [15] and obtained promising results for analysis of the Malimg [10], Microsoft BIG 2015 [11], MaleVis [12], and Malicia [16] datasets. ...
... The proposed model was evaluated with four malware datasets: Malimg [10], Microsoft's BIG 2015 [11], MaleVis [12], and Malicia [16]. The first three datasets were used for training, and the fourth (Malicia) dataset was used for testing. ...
Article
Full-text available
Recently, there has been a huge rise in malware growth, which creates a significant security threat to organizations and individuals. Despite the incessant efforts of cybersecurity research to defend against malware threats, malware developers discover new ways to evade these defense techniques. Traditional static and dynamic analysis methods are ineffective in identifying new malware and pose high overhead in terms of memory and time. Typical machine learning approaches that train a classifier based on handcrafted features are also not sufficiently potent against these evasive techniques and require more efforts due to feature-engineering. Recent malware detectors indicate performance degradation due to class imbalance in malware datasets. To resolve these challenges, this work adopts a visualization-based method, where malware binaries are depicted as two-dimensional images and classified by a deep learning model. We propose an efficient malware detection system based on deep learning. The system uses a reweighted class-balanced loss function in the final classification layer of the DenseNet model to achieve significant performance improvements in classifying malware by handling imbalanced data issues. Comprehensive experiments performed on four benchmark malware datasets show that the proposed approach can detect new malware samples with higher accuracy (98.23% for the Malimg dataset, 98.46% for the BIG 2015 dataset, 98.21% for the MaleVis dataset, and 89.48% for the unseen Malicia dataset) and reduced false-positive rates when compared with conventional malware mitigation techniques while maintaining low computational time. The proposed malware detection solution is also reliable and effective against obfuscation attacks.
... We utilized the "Malware Evaluation with Vision" MaleVis dataset for the experiments [51,52]. This dataset contains 14,226 RGB converted images resized in 2 different square-sized resolutions (i.e., 224 × 224 and 300 × 300 pixels) representing 26 distinct families. ...
Article
Full-text available
The Internet of Things (IoT) is prone to malware assaults due to its simple installation and autonomous operating qualities. IoT devices have become the most tempting targets of malware due to well-known vulnerabilities such as weak, guessable, or hard-coded passwords, a lack of secure update procedures, and unsecured network connections. Traditional static IoT malware detection and analysis methods have been shown to be unsatisfactory solutions to understanding IoT malware behavior for mitigation and prevention. Deep learning models have made huge strides in the realm of cybersecurity in recent years, thanks to their tremendous data mining, learning, and expression capabilities, thus easing the burden on malware analysts. In this context, a novel detection and multi-classification vision-based approach for IoT-malware is proposed. This approach makes use of the benefits of deep transfer learning methodology and incorporates the fine-tuning method and various ensembling strategies to increase detection and classification performance without having to develop the training models from scratch. It adopts the fusion of 3 CNNs, ResNet18, MobileNetV2, and DenseNet161, by using the random forest voting strategy. Experiments are carried out using a publicly available dataset, MaleVis, to assess and validate the suggested approach. MaleVis contains 14,226 RGB converted images representing 25 malware classes and one benign class. The obtained findings show that our suggested approach outperforms the existing state-of-the-art solutions in terms of detection and classification performance; it achieves a precision of 98.74%, recall of 98.67%, a specificity of 98.79%, F1-score of 98.70%, MCC of 98.65%, an accuracy of 98.68%, and an average processing time per malware classification of 672 ms.
... In [13], Bozkir et al. evaluated several CNN architectures for PE malware classification using coloured images. They used the Malevis Dataset containing 12,394 malware files and split this into 8750 training and 3644 testing samples. ...
Article
Full-text available
Malicious botnet applications have become a serious threat and are increasingly incorporating sophisticated detection avoidance techniques. Hence, there is a need for more effective mitigation approaches to combat the rise of Android botnets. Although the use of Machine Learning to detect botnets has been a focus of recent research efforts, several challenges remain. To overcome the limitations of using hand-crafted features for Machine-Learning-based detection, in this paper, we propose a novel mobile botnet detection system based on features extracted from images and a manifest file. The scheme employs a Histogram of Oriented Gradients and byte histograms obtained from images representing the app executable and combines these with features derived from the manifest files. Feature selection is then applied to utilize the best features for classification with Machine-Learning algorithms. The proposed system was evaluated using the ISCX botnet dataset, and the experimental results demonstrate its effectiveness with F1 scores ranging from 0.923 to 0.96 using popular Machine-Learning algorithms. Furthermore, with the Extra Trees model, up to 97.5% overall accuracy was obtained using an 80:20 train–test split, and 96% overall accuracy was obtained using 10-fold cross validation.
... Various machine learning models were used and compared. Note that other lesser dataset includes Malimg [8], MaleVis [9], Dumpware10 [10], and Virus-MNIST [11]. Most of the dataset have varying sizes except for Virus-MNIST which have a size of 32x32x1. ...
Article
Full-text available
Malware detection in current times is increasingly important due to the presence of dangerous malicious software (malware) as well as ransomware in digital cyberspace. Conventional approaches such as using malware features (either static or dynamic or hybrid) have been applied for detection. Advances in Deep Learning (DL) has attracted a lot of interests in applications of malware detection. In particular, the file binaries are fed in to the DL neural network for training and testing. Despite the theoretical basis, we find that overfitting has occurred despite applying precaution, such as applying sufficient dropout layers. Limitations can also be attributed to the final classification layers (fully connected shallow network and softmax classification). In this paper, we apply transfer learning using ShuffleNet and DenseNet-201, two models trained on large dataset to recognize daily objects. This is done with the entire layers frozen to prevent overfitting and an optimal Error correction output code (ECOC) ensemble configuration of Support Vector Machines (SVM). Several ECOC coding matrices were applied, e.g., One vs. All (OVA), One vs. One (OVO), Dense Random (DR), and Sparse Random (SR). Each of these configurations represents varying complexity and ensemble size and, hence, a tradeoff between computation reduction and complex non-linear separation appears. Given that the continuous values of SVM parameters may take up high computation for acquiring the optimal parameter configuration, we apply discrete values combination using a grid search approach for parameter optimization. We test the proposed model on Malimg, MaleVis, virus-MNIST, and Dumpware10 datasets. The results show better/comparable accuracy compared with the existing work. The best/average accuracy values for each dataset over 10 trials are: Malimg (99.14%/98.87%), MaleVis (95.01%/93.91%), Virus-MNIST (86.36%/85.79%), Dumpware10 (96.62%/95.79%).
... The four benchmark malware datasets used to analyze the performance of the proposed deep forest-based malware detection system are the Malimg dataset [31] and the BIG 2015 dataset [2], MaleVis dataset [6] and Malware dataset [38]. The cleanware samples are self-collected containing 1044 files, and they were checked using the VirusTotal The detection ability of the proposed algorithm has to be tested on a totally new unseen malware family to ensure efficient performance. ...
Article
Full-text available
Malware is a rapidly increasing menace to modern computing. Malware authors continually incorporate various sophisticated features like code obfuscations to create malware variants and elude detection by existing malware detection systems. The classification of unseen malware variants with similar characteristics into their respective families is a significant challenge, even if the classifier is trained with known variants belonging to the same family. The identification and extraction of distinct features for each malware is another issue for generalizing the malware detection system. Features that contribute to the generalization capability of the classifier are difficult to be engineered with modifications in each malware. Conventional malware detection systems employ static signature-based methods and dynamic behavior-based methods, which are inefficient in analyzing and detecting advanced and zero-day malware. To address these issues, this work employs a visualization approach where malware is represented as 2D images and proposes a robust machine learning-based anti-malware solution. The proposed system is based on a layered ensemble approach that mimics the key characteristics of deep learning techniques but performs better than the latter. The proposed system does not require hyperparameter tuning or backpropagation and works with reduced model complexity. The proposed model outperformed other state-of-the-art techniques with a detection rate of 98.65%, 97.2%, and 97.43% for Malimg, BIG 2015, and MaleVis malware datasets, respectively. The results demonstrate that the proposed solution is effective in identifying new and advanced malware due to its diverse features.
Article
The everlasting increase in usage of information systems and online services have triggered the birth of the new type of malware which are more dangerous and hard to detect. In particular, according to the recent reports, the new type of fileless malware infect the victims’ devices without a persistent trace (i.e. file) on hard drives. Moreover, existing static malware detection methods in literature often fail to detect sophisticated malware utilizing various obfuscation and encryption techniques. Our contribution in this study is two-folded. First, we present a novel approach to recognize malware by capturing the memory dump of suspicious processes which can be represented as a RGB image. In contrast to the conventional approaches followed by static and dynamic methods existing in the literature, we aimed to obtain and use memory data to reveal visual patterns that can be classified by employing computer vision and machine learning methods in a multi-class open-set recognition regime. And second, we have applied a state of art manifold learning scheme named UMAP to improve the detection of unknown malware files through binary classification. Throughout the study, we have employed our novel dataset covering 4294 samples in total, including 10 malware families along with the benign executables. Lastly, we obtained their memory dumps and converted them to RGB images by applying 3 different rendering schemes. In order to generate their signatures (i.e. feature vectors), we utilized GIST and HOG (Histogram of Gradients) descriptors as well as their combination. Moreover, the obtained signatures were classified via machine learning algorithms of j48, RBF kernel-based SMO, Random Forest, XGBoost and linear SVM. According to the results of the first phase, we have achieved prediction accuracy up to 96.39% by employing SMO algorithm on the feature vectors combined with GIST+HOG. Besides, the UMAP based manifold learning strategy has improved accuracy of the unknown malware recognition models up to 12.93%, 21.83%, 20.78% on average for Random Forest, linear SVM and XGBoost algorithms respectively. Moreover, on a commercially available standard desktop computer, the suggested approach takes only 3.56 s for analysis on average. The results show that our vision based scheme provides an effective protection mechanism against malicious applications.
Chapter
Full-text available
Android is the platform most targeted by attackers. While security solutions have improved against such attacks on one side, at- tackers introduce new variants of existing malware by employing new strategies to evade them on another side. One of the most effective evasion techniques widely used is updating malicious code at runtime. In this study, an up-to-date dataset of such update attacks called UpDroid is introduced and then analyzed. This dataset consists of 2,479 samples belonging to 21 malware families, of which most have been discovered in just the last few years. While this dataset gives an overview of recent malware, it will also be useful for researchers working on dynamic analysis. Furthermore, in this study, a new classification algorithm based on both static and dynamic features is introduced in order to group such malware into families.
Article
Full-text available
Recent work has shown that convolutional networks can be substantially deeper, more accurate and efficient to train if they contain shorter connections between layers close to the input and those close to the output. In this paper we embrace this observation and introduce the Dense Convolutional Network (DenseNet), where each layer is directly connected to every other layer in a feed-forward fashion. Whereas traditional convolutional networks with L layers have L connections, one between each layer and its subsequent layer (treating the input as layer 0), our network has L(L+1)/2 direct connections. For each layer, the feature maps of all preceding layers are treated as separate inputs whereas its own feature maps are passed on as inputs to all subsequent layers. Our proposed connectivity pattern has several compelling advantages: it alleviates the vanishing gradient problem and strengthens feature propagation; despite the increase in connections, it encourages feature reuse and leads to a substantial reduction of parameters; its models tend to generalize surprisingly well. We evaluate our proposed architecture on five highly competitive object recognition benchmark tasks. The DenseNet obtains significant improvements over the state-of-the-art on all five of them (e.g., yielding 3.74% test error on CIFAR-10, 19.25% on CIFAR-100 and 1.59% on SVHN).
Article
Currently, malware is one of the most serious threats to Internet security. In this paper we propose a malware classification algorithm that uses static features called MCSC (Malware Classification using SimHash and CNN) which converts the disassembled malware codes into gray images based on SimHash and then identifies their families by convolutional neural network. During this process, some methods such as multi-hash, major block selection and bilinear interpolation are used to improve the performance. Experimental results show that MCSC is very effective for malware family classification, even for those unevenly distributed samples. The classification accuracy can be 99.260% at best and 98.862% at average on a malware dataset of 10,805 samples which is higher than other compared algorithms. Moreover, for MCSC, on average, it just takes 1.41s to recognize a new sample, which can meet the requirements in most of the practical applications.
Technical Report
In this work we investigate the effect of the convolutional network depth on its accuracy in the large-scale image recognition setting. Our main contribution is a thorough evaluation of networks of increasing depth, which shows that a significant improvement on the prior-art configurations can be achieved by pushing the depth to 16-19 weight layers. These findings were the basis of our ImageNet Challenge 2014 submission, where our team secured the first and the second places in the localisation and classification tracks respectively.
Conference Paper
We trained a large, deep convolutional neural network to classify the 1.2 million high-resolution images in the ImageNet LSVRC-2010 contest into the 1000 dif- ferent classes. On the test data, we achieved top-1 and top-5 error rates of 37.5% and 17.0% which is considerably better than the previous state-of-the-art. The neural network, which has 60 million parameters and 650,000 neurons, consists of five convolutional layers, some of which are followed by max-pooling layers, and three fully-connected layers with a final 1000-way softmax. To make training faster, we used non-saturating neurons and a very efficient GPU implemen- tation of the convolution operation. To reduce overfitting in the fully-connected layers we employed a recently-developed regularization method called dropout that proved to be very effective. We also entered a variant of this model in the ILSVRC-2012 competition and achieved a winning top-5 test error rate of 15.3%, compared to 26.2% achieved by the second-best entry
Article
Deep convolutional neural networks (CNNs) can be applied to malware binary detection through images classification. The performance, however, is degraded due to the imbalance of malware families (classes). To mitigate this issue, we propose a simple yet effective weighted softmax loss which can be employed as the final layer of deep CNNs. The original softmax loss is weighted, and the weight value can be determined according to class size. A scaling parameter is also included in computing the weight. Proper selection of this parameter has been studied and an empirical option is given. The weighted loss aims at alleviating the impact of data imbalance in an end-to-end learning fashion. To validate the efficacy, we deploy the proposed weighted loss in a pre-trained deep CNN model and fine-tune it to achieve promising results on malware images classification. Extensive experiments also indicate that the new loss function can fit other typical CNNs with an improved classification performance.
Conference Paper
In this paper we introduce a deep neural network based malware detection system that Invincea has developed, which achieves a usable detection rate at an extremely low false positive rate and scales to real world training example volumes on commodity hardware. We show that our system achieves a 95% detection rate at 0.1% false positive rate (FPR), based on more than 400,000 software binaries sourced directly from our customers and internal malware databases. In addition, we describe a non-parametric method for adjusting the classifier’s scores to better represent expected precision in the deployment environment. Our results demonstrate that it is now feasible to quickly train and deploy a low resource, highly accurate machine learning classification model, with false positive rates that approach traditional labor intensive expert rule based malware detection, while also detecting previously unseen malware missed by these traditional approaches. Since machine learning models tend to improve with larger datasizes, we foresee deep neural network classification models gaining in importance as part of a layered network defense strategy in coming years.