Geri Dön

Yazılım güvenlik açıklarının skorlanması ve kategorisinin belirlenmesinde yeni bir yöntem

A new method to determine scoring and category of software vulnerabilities

  1. Tez No: 735469
  2. Yazar: HAKAN KEKÜL
  3. Danışmanlar: PROF. DR. BURHAN ERGEN
  4. Tez Türü: Doktora
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2022
  8. Dil: Türkçe
  9. Üniversite: Fırat Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Donanım Bilim Dalı
  13. Sayfa Sayısı: 104

Özet

Yazılım güvenlik açıkları, şahıslar, şirketler ve ülkeler için finansal risklere ve itibar kayıplarına neden olabilmektedir. Yazılım güvenlik açıklarının giderilmesi, test kaynaklarının yetersizliği ve uzman personel eksikleri nedeni ile istenilen seviyede değildir. Kurumların itibarlarını korumak ve güvenli yazılımlar geliştirmek adına sınırlı kaynaklarını doğru kullanarak, test ve düzeltmeleri planlamaları gerekmektedir. Ancak güvenlik vektörlerinin sahip olduğu metrik değerlerinin tespit edilmesi manuel bir işlem olarak insanlar tarafından yapılmaktadır. Bu nedenle bu süreç, zaman almakta ve insanın doğasından kaynaklanan hatalar barındırabilmektedir. Bu metrikler güvenlik açığı önem derecelerinin hesaplanmasında kullanılmasından dolayı önemlidir. Güvenlik açığı analizi ve keşfi işlemlerinin kalitesini artırmak ve süreçleri hızlandırmak için makine öğrenmesi algoritmalarının ve veri madenciliği tekniklerinin kullanılması gerekmektedir. Ancak bu alanda yapılan çalışmalar hala sınırlıdır. Bu çalışmada doğal dil işleme tekniklerinden Bag of Words, Term Frequency Inverse Document Frequency, Ngram, Word2Vec, Doc2Vec ve FastText özellik çıkarımı yöntemleri kullanılarak güvenlik açığı vektörlerinin farklı çok sınıflı sınıflandırılma algoritmaları ile tahmini gerçekleştirilmiştir. Elde edilen metrik değerleri ile güvenlik açığı önem skorları hesaplanmıştır. Sınıflandırma aşamasında Naive Bayes, Desicion Tree, K-Nearest Neighbors, Multi-layer Perceptron ve Random Forest algoritmaları kullanılmıştır. Kamuya açık büyük bir veri setini kullandığımız deneyler, değerlendirmeyi kolaylaştırır ve yazılım güvenlik açığı vektörlerinin sınıflandırılmasında standartlara uygun bir tahmin modeli sunar. Elde edilen sonuçlar çok olasılıklı ve tahmini zor bir problemde farklı tekniklerin ve sınıflandırma algoritmalarının birlikte kullanımının umut verici olduğunu göstermektedir. Ayrıca çalışmamız, kullandığı veri boyutu ve henüz üzerinde pek çalışılmamış güvenlik açığı skorlama sistemi versiyonlarını kapsaması bakımından alanında önemli bir boşluğu doldurmaktadır.

Özet (Çeviri)

Software vulnerabilities can cause financial and reputational losses for individuals, companies, and countries. Software vulnerabilities have not been eliminated to the desired level due to insufficient test resources and lack of expert personnel. In order to protect their reputations and develop secure software, organizations need to accurately plan tests and implement corrections using limited resources. However, the metric values of security vectors are manually determined by humans, which takes time and may introduce errors stemming from human nature. These metrics are important because of their role in the calculation of vulnerability severity. It is necessary to use machine learning algorithms and data mining techniques to improve the quality and speed of vulnerability analysis and discovery processes. However, studies in this area are still limited. In this study, vulnerability vectors were estimated using the natural language processing techniques bag of words, term frequency–inverse document frequency, Ngram, Word2Vec, Doc2Vec, and FastText for feature extraction together with various multiclass classification algorithms, namely Naive Bayes, decision tree, k-nearest neighbors, multilayer perceptron, and random forest. Our experiments using a large public dataset facilitate assessment and provide a standard-compliant prediction model for classifying software vulnerability vectors. The results show that the joint use of different techniques and classification algorithms is a promising solution to a multi-probability and difficult-to-predict problem. In addition, our study fills an important gap in its field in terms of the size of the dataset used and because it covers a vulnerability scoring system version that has not yet been extensively studied.

Benzer Tezler

  1. Yazılım güvenlik açıklarının makine öğrenmesi yöntemleri ile tespiti

    Detection of software security vulnerables by deep neural networks methods

    GÖZDE MİHRAN KAYA

    Yüksek Lisans

    Türkçe

    Türkçe

    2023

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolKocaeli Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ İRFAN KÖSESOY

  2. Yazılım kaynak kodunda güvenlik açıklarının derin öğrenme ve makine öğrenmesi ile otomatik tespiti

    Automatic detection of software vulnerabilities in source code using deep learning and machine learning

    DİLEK MANDAL

    Yüksek Lisans

    Türkçe

    Türkçe

    2024

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolKocaeli Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ İRFAN KÖSESOY

  3. Yazılım güvenlik açıklarına karşı güvenli tasarım desenlerinin incelenmesi ve uygulanması

    Yazilim güvenlik açiklarina karşi güvenli tasarim desenlerinin i̇ncelenmesi ve uygulanmasi

    FATİH KAPLAN

    Yüksek Lisans

    Türkçe

    Türkçe

    2019

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolKTO Karatay Üniversitesi

    Elektrik ve Bilgisayar Mühendisliği Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ ALİ ÖZTÜRK

  4. Profiling developers to predict vulnerable code changes

    Güvenlik açığı kod değişikliklerini öngörmek için geliştiricilerin profilini oluşturma

    TUĞÇE COŞKUN

    Yüksek Lisans

    İngilizce

    İngilizce

    2023

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. AYŞE TOSUN KÜHN

  5. Predicting software vulnerabilities and vulnerability inducing code changes using deep neural networks

    Derin sinir ağlarını kullanarak yazılım güvenlik açıklarını ve güvenlik açığına sebep olan kod değişikliklerini tahmin etme

    SEFA EREN ŞAHİN

    Yüksek Lisans

    İngilizce

    İngilizce

    2020

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ AYŞE TOSUN