RPL Tabanlı IOT Cihazları Zafiyetinin Tespiti İçin Makine Öğrenmesi Algoritmalarının Karşılaştırılması

İçerik Tablosu

Giriş

Giriş

Dünya düzenini değiştiren, küreselleşmenin önünü açan ve yepyeni bir çağ başlatan iki unsur şüphesiz ki bilişim ve internettir. Bu değişimin Claude Shannon’un 1936’da henüz 21 yaşındayken yazdığı yüksek lisans tezinde, Boole cebrinin elektronik devrelerle gerçekleştirebileceğini göstermesi ile başladığını kabul edebiliriz. (Chiu, Lin, Mcferron, Petigara, & Seshasai, 2001 1 ) Modern bilgisayarın temellerinin atıldığı bu dönemden sonra, 1’ler ve 0’larla ifade edilebilen her şey insan hayatını derinden etkiledi. Her türlü veri bilgiye dönüştürüldü ve insanoğlunun muazzam kararlar almasına neden oldu.Cihazlardan, ortamdan ve hatta canlılardan elde edilen verileri toplamak, işlemek, cihazları çalıştırmak veya elde edilen bilgileri bir yere aktarmak için bazı aygıtlara ihtiyaç duyulması üzerine “Nesnelerin İnterneti” (Internet of Things-IoT) kavramı ortaya atıldı. Nesnelerin İnterneti, “belirli bir amacı gerçekleştirmek için bir ağda çalışan, veri toplayan, verileri ileten, verileri işleyen, verilerin analizini yapıp bir sonuç çıkarabilen, işlediği verilerle cihazları çalıştıran, durduran aygıtlardır.” diyebiliriz. Bugün birçok otomasyon IoT cihazları sayesinde yapılabilmektedir.İnsan hayatına girmesiyle beraber muazzam fayda sağlayan IoT cihazları, birçok noktadan veri topladığı, ürettiği veya aktardığı için, şebeke voltajı ile enerji ihtiyaçlarını doğrudan karşılamak yerine bağımsız enerji kaynaklarına ihtiyaç duymaktadırlar. Ayrıca bu cihazların çoğu kablosuz haberleşirler. Üstelik bu IoT cihazlarının çok, belki binlerce olduğu bir ortamda hepsinin bir noktaya veri transferini gerçekleştirmesi maliyet etkin bir enerji tüketimini gerçekleştirmeyecektir.  Çünkü veri transfer noktasına (modem, router vs.) daha uzak olan cihaz, daha fazla güç tüketecektir. Ayrıca, uzak noktaya veri transferi esnasında veri paketlerinde kayıplar oluşacaktır.  Bu sorunu çözmek için cihazların birbirleri üzerinden iletişim kurarak transfer noktasına bağlantı sağlamak büyük bir enerji tasarrufu sağlayacak ve veri paketlerindeki bozulmaları asgariye indirecektir. Tek veri transfer noktası ile iletişim sağlayan ve birbiri üzerinden iletişim kuran topoloji örneği Şekil 1.1’de gösterilmiştir. Bu tip sistemler, çok noktadan çok noktaya (Multipoint to Multipoint) olarak adlandırılmıştır.
Şekil 1.1: Tek Veri Noktası ile ve Birbiri Üzerinden İletişim Kuran Topoloji.
Şekil 1.1: Tek Veri Noktası ile ve Birbiri Üzerinden İletişim Kuran Topoloji.

Mart 2012 yılında İnternet Mühendisliği Görev Gücü (IETF) tarafından RPL protokolü (Düşük Güçlü ve Kayıplı Ağlar için IPv6 Yönlendirme Protokolü) ortaya çıkarılmıştır. (Winter, ve diğerleri, Mart 2012 2 ) Bu protokol ile, IoT cihazları birbirleri üzerinden veri iletişimini gerçekleştirmiş, düşük güçte çalışılması sağlanmış ve veriyi daha az kayıplı iletmiştir.

6LoWPAN protokolü için tasarlanan RPL, IoT cihazlarının güç tüketimini optimize etmeyi amaçlar. Ancak, RPL’nin iç yapısının karmaşıklığı ve 6LoWPAN cihazlarının düşük güvenlikli doğası nedeniyle bu protokol, ağ içindeki veya dışındaki saldırılara karşı savunmasızdır. Gerçi, RPL protokolü kendi bünyesinde güvenlik kontrollerini barındırır fakat bu kontrollerin uygulanmaması veya uygulanamaması, bu protokolü zafiyetlere açık hale getirecektir.

3’üncü katmanda çalışan RPL’ye yönelik saldırılar, sistemin güç tüketimini artıracağı için IoT cihazlarının normalden fazla işlem yapmasına ve veri iletmesine neden olacağı için bataryalarının erken bitmesine, dolayısıyla güç optimizasyonu için tasarlanmış olan bu sistemin, istenilen şekilde çalışmamasına neden olacaktır. Bu nedenle, ağ katmanında, hızlı, pratik, karmaşık olmayan ve güvenilir bir saldırı tespit sistemi geliştirmek çok önemlidir. RPL ile çalışan IoT cihazlarına bir saldırı olması durumunda, 3. katmandaki ağ paketlerinde bir anomali meydana gelecektir.

Siber güvenlik alanında, anomaliyi veya saldırıların tespit edebilmek için makine öğrenmesi metotları çok yaygın olarak kullanılmaktadır. Bilindiği üzere, makine öğrenmesi, bilgisayara eldeki verilerle matematiksel hesaplamalar yaptırılması sonucunda bilgisayarın mevcut verileri öğrenmesi, en nihayetinde eldeki veriye benzer veriler bilgisayara verildiğinde bilgisayarın kuvvetli tahmin yapabilmesidir.

OSI (Open Systems Interconnection (Açık Sistem Arabağlantısı)-3’üncü katman olan ağ katmanında çalışan RPL protokolündeki gerçekleştirilecek saldırıları, hızlı, pratik, karmaşık olmayan ve güvenilir yolla tespit edebilmek için, aşağıdaki aşamalar izlenildiği takdirde saldırılar tespit edilecektir.

  • Nesnelerin interneti cihazlarını simüle eden bir yazılım ile normal düğümlerle (IoT cihazlarıyla) yapılacak simülasyonun veri paketlerini toplamak,
  • Aynı simülasyon ile farklı saldırılar gerçekleştiren zafiyetli düğümlerle yapılacak simülasyonun veri paketlerini toplamak,
  • Simülasyonlardan elde edilen verileri işlemek, normal ve zafiyetli düğümlerle yapılan verileri etiketleyerek sınıflandırmak.
  • Yeni oluşturulan veri setini ile Makine Öğrenmesi algoritmaları ile eğitmek ve test etmek,
  • En iyi sonucu veren makine öğrenmesi algoritmasını tespit ederek, saldırı tespit sistemini bu algoritma üzerinde kurgulamak.

Bilindiği üzere, çok farklı makine öğrenmesi algoritmaları bulunmaktadır. Bu algoritmaların birbirlerine karşı üstünlükleri ve zafiyetleri vardır.

Tezin Amacı

Bu yüksek lisans tezinde RPL’ye yapılan saldırıları hızlı, pratik, karmaşık olmayan ve güvenilir bir yolla tespit edebilmek maksadıyla OSI 3’üncü katmanı olan ağ katmanındaki veri paketleri 6 adet makine öğrenmesi algoritması ile analiz edilip aralarındaki en hızlı, etkili, karmaşık olmayan ve güvenilir algoritmayı tespit etmek amaçlanmıştır.

Benzer Çalışmalar (Literatür Taraması)

Yavuz, 2018 yılında gerçekleştirdiği yüksek lisans tezinde, RPL protokolü ile çalışan nesnelerin interneti cihazlarına yapılan saldırıları tespit etmek maksadıyla farklı sayıdaki normal ve zafiyetli cihazlarla Cooja simülasyonu üzerinde saldırıları gerçekleştirmiş, verileri setini elde etmiş ve elde ettiği veri seti ile derin öğrenme tabanlı bir saldırı tespit sistemi elde etmiştir. (Yavuz, 2018 3)

Müller ve arkadaşları 2019’da Kernel Density Estimation (KDE) ile bir makine öğrenimi yöntemi geliştirmiştir. Bu yöntem ile, Kara Delik (Black Hole), Hello Flood (Taşma saldırısı-HF) ve Sürüm Numarası Değiştirme saldırısını yüzde 84,91 gerçek pozitif (GP) ve yüzde 0,5’ten az yanlış pozitif (YP) oranı ile tespit etmeyi başarmışlardır. (Müller, Debus, Kowatsch, & Böttinger, 2019 4)

Neerugatti ve Reddy, çalışmalarında K-en yakın komşu algoritmasına dayanan MLTKNN adlı makine öğrenimi yaklaşımına dayalı bir saldırı tespit tekniği önermişlerdir. 30’a varan çeşitli miktarlarda IoT cihazı (düğüm) ile % 90-% 98 GP oranına ve % 0,9 – % 0,2 YP oranına ulaşmışlardır. (Neerugatti & Reddy, 2019 5)

Verma ve Ranga, 2019’da, RPL’ye karşı saldırıları tespit etmek için ELNIDS (Ensemble Learning based Network Intrusion Detection System- Ensemble Learning Tabanlı İzinsiz Giriş Tespit Sistemi) adlı bir Ağ Saldırısı Tespit Sistemi mimarisi tasarlamıştır. Bu tasarım Boosted Trees, Bagged Trees, Subspace Discriminant,, ve RUSBoosted Trees algoritmaları ile uygulanmıştır. Çalışmada RPL-NIDDS17 adlı veri setinin 20 özelliği kullanılarak Sinkhole, Blackhole, Sybil, Clone ID, Selective Forwarding, HF ve Local Repair saldırıları makine öğrenimi yöntemleriyle tespit edilmiştir. Boosted Trees algoritması % 94,5 ile en yüksek doğruluğu elde edilirken, Subspace Discriminant yöntemi% 77,8 ile en düşük doğruluk elde edilmiştir. (Verma & Ranga, 2019 6 )

Belavagi ve Muniyal, 2020’de RPL protokolü ile oluşturulan sistemdeki düğüm sayısını sırası ile 10, 40 ve 100 düğüm olarak ayrı ayrı tasarlamışlardır. Her bir sistemde de zafiyetli düğümlerin oranı %10, %20 ve %30 olacak şekilde düğüm eklemişlerdir. Elde ettikleri tutarsızlık yüzdesi, enerji tüketimi, GP ve YP oranına göre şebekenin davranışını gözlemlemişlerdir. Bu çalışmada, makine öğrenimi algoritmaları için ağ paketlerinin yanı sıra diğer parametreleri de kullanmışlardır. (Belavagi & Muniyal, 2020 7 )

Çakır, Toklu ve Yalçın, IoT ağlarında RPL’ye yönelik Taşma Saldırılarını saldırılarını tahmin etmek ve önlemek için Geçitli Tekrarlayan Birim ağ modeli tabanlı derin öğrenme algoritması önermişlerdir. Bu modeli Destek Vektör Makineleri (SVM-Support Vector Machines) ve Lojistik regresyon (LR-Logistic Regression) yöntemleriyle karşılaştırmışlardır; ayrıca, düğümlerin farklı güç durumlarını ve toplam enerji tüketimini test etmişlerdir. Sundukları model ile HF saldırılarını literatür çalışmalarına göre çok daha düşük hata oranıyla tespit etmişlerdir. (Çakır, Toklu, & Yalçın, 2020 8)

Shafiq ve arkadaşları, IoT güvenliğinde kullanılacak siber saldırı tespit sistemi için birçok makine öğrenimi algoritması arasından etkili bir makine öğrenimi algoritmasının seçilmesini sağlayan bir model üzerinde çalışmıştır. Bu çalışma sonucunda Naive Bayes Makine Öğrenmesi algoritmasının, IoT ağında anomalilik ve saldırı tespitini etkin bir şekilde tespit ettiği sonucuna varılmıştır. (Shafiq, Tian, Sun, Du, & Guizani, 2020 9 ) Ancak bu çalışma RPL tabanlı IoT cihazları için yapılmamıştır.

Bu tez çalışmasında, diğer çalışmalardan farklı olarak, RPL’deki Taşma Saldırıları, Sürüm Numarası Arttırma Saldırıları ve Azalan Rank saldırılarını saldırıları tespit etmede kullanılmak üzere tek bir makine öğrenimi yöntemi geliştirilmemiştir. Aksine, birden fazla makine öğrenimi yöntemini karşılaştırarak en iyi sonucu elde etmeye odaklanılmıştır. Saldırıları tespit etmek maksadıyla oluşturulan veri setinde sadece 3. katman ağ paketlerinden elde edilen veriler kullanılmıştır. Bunun nedeni oldukça basittir. Her IoT cihazı için anlık güç ve enerji tüketimi gibi parametrelerin alınması, işlenmesi ve iletilmesi, fazladan işlem ve kapasite gücü gerektirecektir. Bu nedenle çok hızlı bir şekilde elde edilebilen 3’üncü katman ağ paketleri bu çalışmada kullanılmıştır. 3’üncü katmanda iletilen normal ve zafiyetli RPL verileri 1 saniyelik çerçevelere bölünmüş, bu çerçevede yer alan paketlerin süreleri, boyutları, RPL mesaj türleri ve paketlerin oranları özetlenerek bir veri seti hazırlanmıştır. Bu veri setleri Karar Ağaçları, Lojistik Regresyon, Rastgele Orman, K En Yakın Komşu, Navie Bayes ve Yapay Sinir Ağı makine öğrenmesi algoritmaları ile test edilmiştir. Son olarak, en iyi sonucu bulmak için bu makine öğrenimi algoritmaları karşılaştırılmıştır.

Bu çalışmada, ikinci bölümde, IoT cihazları, bu cihazlarda kullanılan diğer protokoller, RPL protokolü ve RPL protokolünde gerçekleştirilen saldırılar detaylıca açıklanmıştır. Üçüncü bölümde, saldırılara ait veri setini elde etmek için deneylerin nasıl yapıldığı detaylıca açıklanmış ve hangi yöntemlerin belirleneceği belirtilmiştir. Dördüncü bölümde ise deneyler sonucunda elde edilen veriler yorumlanmıştır.

Makine öğrenmesi algoritmalarından en çok başarı sağlayan ve en karmaşık problemleri bile kolayca tespit edebilen makine öğrenmesi algoritması elbette ki yapay sinir ağlarıdır. Yapay sinir ağları temelde nümerik verilerden lineer olmayan haritalama özelliği ve paralel çalışma özelliği ile karşımıza güçlü bir algoritma olarak çıkar. Yalnız, yapay sinir ağlarının eğitim süreleri uzun olduğu için diğerlerine göre biraz daha maliyetlidir. RPL protokolüne yapılan saldırıların tespitinde yapay sinir ağları yüksek doğrulukla sonuç vereceği beklenmektedir. Ancak, Karar Ağaçları, Lojistik Regresyon, Rastgele orman, K En Yakın Komşu, Navie Bayes gibi diğer makine öğrenmesi algoritmalarının eğitim sürelerinin daha kısa olacağı ve en az yapay sinir ağları kadar yüksek doğrulukla saldırıyı tespit edecekleri değerlendirilmektedir. (Yılmaz, 2015 10)

Kaynakça

1. Chiu, E., Lin, J., Mcferron, B., Petigara, N., & Seshasai, S. (2001). Mathematical Theory of Claude Shannon. The Structure of Engineering Revolutions. (Geri dön)

2. Winter, T., Thubert, P., Brandt, A., Hui, J., Kelsey, R., Levis, P., . . . Alexander, R. (Mart 2012). RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks. Internet Engineering Task Force. https://www.hjp.at/doc/rfc/rfc6550.html (Geri dön)

3. Yavuz, F. Y. (2018). Deep Learning in Cyber Security for Internet of Things. (Geri dön)

4. Müller, N., Debus, P., Kowatsch, D., & Böttinger, K. (2019). Distributed Anomaly Detection of Single Mote Attacks in RPL Networks. Proceedings of the 16th International Joint Conference on e-Business and Telecommunications (ICETE 2019),. doi:DOI: 10.5220/0007836003780385 (Geri dön)

5. Neerugatti, V., & Reddy, A. M. (2019). Machine Learning Based Technique for Detection of Rank Attack in RPL based Internet of Things Networks. International Journal of Innovative Technology and Exploring Engineering. (Geri dön)

6. Verma, A., & Ranga, V. (2019). ELNIDS: Ensemble Learning based Network Intrusion Detection System for RPL based Internet of Things. 2019 4th International Conference on Internet of Things: Smart Innovation and Usages (IoT-SIU). doi:10.1109/IoT-SIU.2019.8777504 (Geri dön)

7. Belavagi, M. C., & Muniyal, B. (2020). Multiple intrusion detection in RPL based networks. International Journal of Electrical and Computer Engineering (IJECE). doi:10.11591/ijece.v10i1.pp467-476 (Geri dön)

8. Çakır, S., Toklu, S., & Yalçın, N. (2020). RPL Attack Detection and Prevention in the Internet of Things Networks Using a GRU Based Deep Learning. EEE Access. doi:10.1109/ACCESS.2020.3029191 (Geri dön)

9. Shafiq, M., Tian, Z., Sun, Y., Du, X., & Guizani, M. (2020). Selection of effective machine learning algorithm and Bot-IoT attacks traffic identification for internet of things in smart city. Future Generation Computer Systems 107 (2020), 433-442. (Geri dön)

10. Yılmaz, A. (2015). Sinirsel Bulanık Mantık Modeliyle Kanser Risk Analizi. Sakarya: Sakarya Üniversitesi Fen Bilimleri Enstitüsü. (Geri dön)

Blog özeti

Bu bölümde, tezin giriş bölümü, tezin amacı ve literatür taraması yer almaktadır.Anahtar Sözcükler: RPL, Makine Öğrenmesi, Taşma Saldırıları, Versiyon Numarası Yükseltme Saldırısı, Azaltılmış Rank Saldırısı

Yazar Hakkında

Diğer Yazılar

Tezim
Murat Uğur KİRAZ

Sonuç

Bu bölümde, RPL protokolüne yapılan Taşma Saldırısı, Azaltılmış Rank Saldırısı ve Sürüm Numarası Artırma Saldırısı “Karar Ağacı”, “Lojistik Regresyon”, “Rasgele Orman”, “Naive Bayes”, “K En Yakın Komşu” ve “Yapay Sinir Ağları” algoritmaları ile eğitilmiş ve test edilmiştir.

Taşma Saldırılarının tespitinde %97,2 doğruluk oranı ile Yapay Sinir Ağları algoritması, Sürüm Numarası Artırma Saldırılarının tespitinde %81 doğruluk oranı ile K En Yakın Komşu algoritması, Azaltılmış Rank saldırılarının tespitinde %58 doğruluk oranı ile Yapay Sinir Ağları algoritması başarı gösterdiği tespit edilmiştir.

Daha Fazla oku >>
Tezim
Murat Uğur KİRAZ

Makine Öğrenmesi Değerlerinin Yorumlanması

RPL Tabanlı IOT Cihazları Zafiyetinin Tespiti İçin Makine Öğrenmesi Algoritmalarının Karşılaştırılması başlıklı yüksek lisans tezimi nasıl yaptığımı, bu süreçte elde ettiğim tecrübelerimi ve bu tezdeki kodları bir yazı dizisi halinde blog sayfamda paylaşmaya devam ediyorum.

Şimdiye kadar, RPL protokolü ve RPL protokolünde gerçekleşen saldırılarla ilgili detaylı bilgi verdim. Sonrasında, Taşma Saldırıları, Sürüm Numarası Artırma Saldırısı ve Azaltılmış Rank Saldırısı ile ilgili deneyler yapıp, ham verileri elde ettim ve bu ham verileri anlamlı hale getirdim. Zafiyetli düğümlerle yapılan deney sonuçları ile, iyicil düğümlerle yapılan deney sonuçlarını istatistiksel metotlarla karşılaştırdım.

Bu bölümde ise makine öğrenmesi algoritmaları ile tespit ettiğimiz saldırıların sayısal sonuçlarını yorumlayacağım.

Daha Fazla oku >>

Yazıyı paylaşın

LinkedIn
Twitter