Derin öğrenme temelli özgün bir android kötücül yazılım tespit modeli
A novel android malware detection model based on deep learning
Yazar: BÜŞRA ZEYNEP KARA
Danışman: DOÇ. DR. ABDULLAH TALHA KABAKUŞ
Düzce Üniversitesi / Lisansüstü Eğitim Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2024
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Evrişimli sinir ağları = Convolutional neural networks ; Yapay sinir ağları = Artificial neural networks

Özet:
Android, öncelikle (i) dünyanın en yaygın kullanılan mobil işletim sistemi olması ve (ii) açık kaynaklı bir yapıya sahip olması nedeniyle kötücül yazılım geliştiricileri için önemli bir hedef haline gelmiştir. Android kötücül yazılımları kullanıcı gizliliğini tehlikeye atabilir, kullanıcıların hassas bilgilerini çalabilir, ciddi mali kayıplara neden olabilir ve cihaz işlevselliğini bozabilir. Bu nedenle, kullanıcıları ve cihazlarını korumak için etkili kötücül yazılım tespit teknikleri gereklidir. Android kötücül yazılım tespiti üzerine yapılan çalışmalar literatürde üç ana kategoriye ayrılmıştır: (i) statik analiz, (ii) dinamik analiz ve (iii) hibrit analiz. Statik analiz, bir uygulamanın kaynak kodunu, kaynaklarını ve meta verilerini yürütme olmadan incelemeye odaklanır. Dinamik analiz, uygulamanın kontrollü bir ortamda yürütülmesini ve davranışının gerçek zamanlı olarak izlenmesini içerir. Hibrit analiz ise bu iki yöntemin bir kombinasyonudur. Bu çalışmada, Android kötücül yazılım tespiti için geleneksel Makine Öğrenmesi ve derin öğrenmeye dayalı çok çeşitli modeller önerilmiştir. Önerilen modelleri eğitmek ve değerlendirmek için 3 417'si iyicil ve 3 707'si kötücül olmak üzere 7 124 Android uygulamasından oluşan benzersiz bir veri seti oluşturulmuştur. Özellik çıkarımı için önerilen yaklaşım, izinlerini ve hizmetlerini çıkarmak için derlenmiş APK arşivlerini ayrıştırmaktadır. Bu metinsel özellikler Word2Vec tekniği kullanılarak kelime vektörlerine dönüştürülmüştür. Önerilen makine öğrenimi modelleri, oluşturulan veri kümesi üzerinde eğitilmiş ve test edilmiştir. Deneysel sonuçlara göre, önerilen özgün 1-Boyutlu CNN modeli, önerilen tüm makine öğrenmesi modelleri arasında %99 gibi yüksek bir doğrulukla en iyi doğruluğu elde etmiştir.

Abstract:
Android has become an important target for malware developers, primarily due to (i) being the world's most widely used mobile operating system and (ii) having an open-source nature. Android malware can compromise user privacy, steal users' sensitive information, cause serious financial losses, and disrupt device functionality. Therefore, effective malware detection techniques are essential to protect users and their devices. Studies on Android malware detection are categorized into three main categories in the literature: (i) static analysis, (ii) dynamic analysis, and (iii) hybrid analysis. Static analysis focuses on examining an application's source code, resources, and metadata without execution. Dynamic analysis involves executing the application in a controlled environment and monitoring its behavior in real-time. Hybrid analysis is a combination of these two methods. In this study, a wide range of models based on traditional Machine Learning (ML) and deep learning were proposed for Android malware detection. A unique dataset consisting of 7 124 Android applications, 3 417 of which are benign and 3 707 of which are malicious, was constructed to train and evaluate the proposed models. For feature extraction, the proposed approach decompiles the compiled APK archives to extract their permissions and services. These textual features were converted into word vectors using the Word2Vec technique. The proposed ML models were trained and tested on the constructed dataset. According to the experimental results, the proposed novel CNN model obtained the best accuracy, an accuracy as high as 99%, among all proposed ML models.