Geri Dön

Web uygulamalarında SQL injectıon zafiyetinin önlenmesi için açıklanabilir yapay zeka kullanımı

Using explainable artificial intelligence to prevent SQL injection vulnerability in web applications

  1. Tez No: 897989
  2. Yazar: ERHAN BAŞ
  3. Danışmanlar: DOÇ. DR. AHMET ALİ SÜZEN
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2024
  8. Dil: Türkçe
  9. Üniversite: Isparta Uygulamalı Bilimler Üniversitesi
  10. Enstitü: Lisansüstü Eğitim Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Belirtilmemiş.
  13. Sayfa Sayısı: 57

Özet

Bu yüksek lisans tezi, web uygulamalarında SQL enjeksiyon zafiyetlerinin önlenmesi amacıyla açıklanabilir yapay zekanın (AYZ) kullanımını araştırmaktadır. Çalışma kapsamında, SQL enjeksiyon saldırılarını tespit etmek ve engellemek için çeşitli makine öğrenmesi algoritmaları incelenmiştir. Bu amaç doğrultusunda AdaBoost, Gradient Boosting, Extra Trees, Rastgele Orman ve Karar Ağacı algoritmaları kullanılmıştır. Deneyler sonucunda, AdaBoost algoritmasının en yüksek başarıyı sağladığı belirlenmiştir. AdaBoost algoritmasının performansını daha da artırmak amacıyla hiperparametre optimizasyonu gerçekleştirilmiş ve sonuçlar daha da iyileştirilmiştir. Optimizasyon sürecinin ardından, AdaBoost algoritması en iyi sonuçları vermiştir. AdaBoost algoritmasının üstün performansını daha anlaşılır hale getirmek ve modelin kararlarını açıklayabilmek için LIME yöntemi kullanılmıştır. LIME, modelin kararlarını açıklamak ve kullanıcıların modelin nasıl çalıştığını anlamalarını sağlamak için kullanılmıştır. Bu sayede, web uygulamalarının güvenlik açıklarını daha etkili bir şekilde tespit edebilmek ve önleyebilmek için hem güçlü bir model hem de bu modelin kararlarını açıklayabilen bir yöntem geliştirilmiştir. Sonuç olarak, bu tez çalışması, web uygulamalarında SQL enjeksiyon zafiyetlerinin önlenmesi için açıklanabilir yapay zekanın etkili bir şekilde kullanılabileceğini göstermiştir. AdaBoost algoritması %99.1 doğruluk oranı ile LIME yöntemi için kullanılmış böylece model açıklanabilirliği açısından başarılı sonuçlar sunmuştur. Bu bulgular, web uygulamaları geliştiricilerine ve güvenlik uzmanlarına, SQL enjeksiyon saldırılarına karşı daha güvenli sistemler geliştirmeleri için önemli bir katkı sağlamaktadır.

Özet (Çeviri)

This master's thesis investigates the use of explainable artificial intelligence (XAI) to prevent SQL injection vulnerabilities in web applications. Within the scope of the study, various machine learning algorithms were examined to detect and prevent SQL injection attacks. For this purpose, AdaBoost, Gradient Boosting, Extra Trees, Random Forest and Decision Tree algorithms were used. As a result of the experiments, it was determined that the AdaBoost algorithm provided the highest success. In order to further increase the performance of the AdaBoost algorithm, hyperparameter optimization was performed and the results were further improved. After the optimization process, the AdaBoost algorithm produced the best results. The LIME method was used to make the superior performance of the AdaBoost algorithm more understandable and to explain the decisions of the model. LIME has been used to explain the model's decisions and enable users to understand how the model works. In this way, both a powerful model and a method that can explain the decisions of this model have been developed in order to more effectively detect and prevent security vulnerabilities in web applications. As a result, this thesis study has shown that explainable artificial intelligence can be used effectively to prevent SQL injection vulnerabilities in web applications. The AdaBoost algorithm was used for the LIME method with an accuracy of 99.1%, thus providing successful results in terms of model explainability. These findings provide an important contribution to web application developers and security experts to develop more secure systems against SQL injection attacks.

Benzer Tezler

  1. Measurement of Javascript applications' readiness to untrusted data using Bayesian networks

    Javascript uygulamalarında güvenilir olmayan verilere karşı hazırlığının Bayesian ağları ile ölçülmesi

    EKİNCAN UFUKTEPE

    Yüksek Lisans

    İngilizce

    İngilizce

    2014

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİzmir Yüksek Teknoloji Enstitüsü

    Bilgisayar Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. TUĞKAN TUĞLULAR

  2. Web yazılımlarında güvenlik problemleri üzerine araştırma

    Research on protection security problems in web applications

    NARMIN MAMMADOVA

    Yüksek Lisans

    Türkçe

    Türkçe

    2017

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Aydın Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. AHMAD BABANLI

  3. Uygulama katmanı için güvenlik duvarı geliştirilmesi

    An efficient firewall for web applications (EFWA)

    METİN ŞAHİN

    Yüksek Lisans

    Türkçe

    Türkçe

    2018

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolGebze Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. İBRAHİM SOĞUKPINAR

  4. Detecting SQL injection and XSS patterns with machine learning techniques

    Başlık çevirisi yok

    ONURKAN ÖZBALCI

    Yüksek Lisans

    İngilizce

    İngilizce

    2020

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolBahçeşehir Üniversitesi

    Siber Güvenlik Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ AHMET NACİ ÜNAL

  5. Web tabanlı saldırı önleme amaçlı yeni bir gerçek zamanlı web uygulaması güvenlik duvarı algoritmasının gerçekleştirilmesi

    Implemantation of a real time web-based intrusion prevention aimed web application firewall algoritm

    ADEM TEKEREK

    Doktora

    Türkçe

    Türkçe

    2016

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

    Elektronik-Bilgisayar Eğitimi Ana Bilim Dalı

    PROF. DR. ÖMER FARUK BAY