Zararlı yazılım tespiti için yazılım davranış analizi
Software behavior analysis for malware detection
Yazar: SALİH YESİR
Danışman: PROF. DR. İBRAHİM SOĞUKPINAR
Gebze Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Siber Güvenlik Bilim Dalı
Derece: Yüksek Lisans, 2021
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Siber saldırı türleri arasında kurumlar ve bireyler için yüksek finansal kayıplara neden olan zararlı yazılımlar, bilgisayar sistemlerine yönelik en büyük tehdittir. Sürekli kullandığımız e-posta, web siteleri, web uygulamaları gibi enjeksiyon vektörleri aracılığıyla bilgisayarlarımıza kolaylıkla bulaşabilen zararlı yazılım türleri gün geçtikçe artmakta ve yeni türler piyasaya sürülmektedir. Zararlı yazılımları otomatik olarak tespit etmek ve bilgisayar sistemlerimizi zararlı yazılım tehditlerine karşı korumak kritik bir hale gelmiştir. Bilgisayar sistemlerimizi zararlı yazılım tehditlerine karşı korumak için farklı analiz yöntemleri mevcuttur. Dinamik analiz, bilgisayar sistemindeki yazılımın davranışsal bilgilerinin elde edilmesinde oldukça etkilidir. Zararlı yazılımın sistem üzerindeki gerçekleştirdiği işlevleri olan API çağrı dizisi bilgilerini elde edebilir. Ancak, yazılım çalıştırdıkları herhangi bir döngüde veya aynı tıklamalar sonucunda çok fazla tekrarlı ve gürültülü API çağrısı oluşturmaktadır. Zararlı yazılımlar da aynı şekilde tespit edilmekten kaçınma amacıyla gürültülü ve tekrarlı API çağrıları oluşturur. Tekrarlı ve gürültülü API çağrı dizileri zararlı yazılım tespit etmeyi zora sokmaktadır. Bu çalışmada, API çağrı dizisini optimizasyon sürecine tabi tutma ve bu bilgileri kelime temsili algoritmalarıyla kullanma önerilmiştir. Davranış bilgisi API çağrı dizisini, fastText ve BERT kelime temsili teknikleri kullanılarak zararlı yazılımın tespiti ve sınıflandırma görevleri için modeller eğitilmiştir. Performansı değerlendirmek için üç farklı veri seti üzerinde yapılan deneylerde önerilen yöntem her iki kelime temsili tekniği için yüksek performans sağladığı görülmüştür. Deney sonuçlarının karşılaştırılmasına göre en yüksek başarı sağlayan fastText kelime temsili tekniği %99.86 doğruluk oranıyla  zararlı yazılımları tespit etmiştir.

Abstract:
Among the types of cyber-attacks, malware that causes high financial losses for institutions and individuals is the biggest threat for computer systems. Kinds of malware increase day-by-day and new types are released, which can easily infect our computers through injection vectors such as e-mail, websites, web applications that we use constantly. It is very important to automatically detect them and protect our computer systems against malware threats. Analysis methods are available to protect our computer systems against malware threats. Dynamic analysis is highly effective in obtaining behavioral information of the software on the computer system and can obtain the API call sequence information of the malware. However, the software generates too many repetitive and noisy API calls as a result of any loop they run or the same clicks. Malware likewise generates noisy and repetitive API calls to evade detection. Repetitive and noisy API call sequence makes malware detection difficult. In this study, it is proposed to subject the API call sequence to the optimization process and to use this information with word embeddings algorithms. Models are trained for malware detection and classification tasks using the behavioral information API call sequence, fastText, and BERT word embedding techniques. In the experiments conducted on three different data sets to evaluate the performance, it was seen that the proposed method provides high performance for both word representation techniques. According to the comparison of the test results, the fastText word representation technique, which achieved the highest success, detected malware with an accuracy rate of 99.86%.