Page 66 - bilgem-teknoloji-dergisi-9
P. 66

Yapay Zekâ






              Analiz Yaklaşımına Göre Kullanılan               komşuluk  algoritması,  (naïve)  Bayes  sınıflandırma  al-
              Bilgi Kaynakları                                 goritması  ve  yapay  sinir  ağları  gibi  alışıldık  yöntem-
              Zararlı  yazılım  analiz  yöntemleri  incelenen  yazılımın   lerle  kullanılmışlardır.  Bunun  yanında  sistemden  elde
              durumuna göre ikiye ayrılmaktadır. Statik analizde, ya-  edilen bilgi üzerinde yapılan özellik mühendisliğini aza
              zılımlar diskteki dosyalar üzerinden elde edilen bilgiler   indirgeyen ve veriyi ham şekilde işleyen yaklaşımlar da
              kullanılarak analiz edilir. Bu dosyalar üzerinden dosya   denenmiştir. Bu modellerde son zamanda popüler olan
              başlığı, program kodu ve dosya formatına göre değişen   derin öğrenme mimarileri, uzun kısa süreli bellek (long
              diğer bölümlere ait bilgi elde edilir. Dinamik analizde ise   short-term memory - LSTM) ve konvolüsyonel sinir ağ-
              dosyaların  belleğe  yüklenerek  çalıştırıldığında  göster-  ları (convolutional neural networks – CNN) kullanılmak-
              diği davranış; kod akışı, işletim sistemi ve sistem kay-  tadır. Çalıştırılabilir dosyalar ise tümüyle ya da dosyanın
              naklarıyla etkileşimi izlenerek elde edilen bilgi kullanılır.   bazı  kısımlarını  barındıracak  şekilde  girdi  olarak  alın-
              Eldeki zararlının özelliklerine bağlı olarak bu iki yakla-  maktadır.
              şımdan  birisini  kullanmak  diğerine
              göre  daha  yararlı  olabilir.  Örneğin                      Diğer  yandan  güncel  çalışmalarda
              güçlü bir şekilde şifrelenmiş ve pa-  Günümüzde zararlı      araştırmacılar  dinamik  özelliklerden
              ketlenmiş  bir  zararlı  yazılım  statik   yazılımlar, basit   daha  etkin  biçimde  yararlanmaya  baş-
              olarak incelenirken çalışma sırasın-  reklam yazılımlarından   lamışlardır.  Çoğunlukla  sandbox  (kum
              da  kullanılan  program  koduna  ve                          havuzu)  teknolojilerinden  yararlanılan
              diğer kaynaklara erişmek zor olabi-  ticari casusluğa ve     bu  çalışmalarda,  araştırmacılar  sanal
              lir. Bunun yanında zararlı yazılımlar   askeri sistemlere yapılan   ortamdaki  programın  davranışını  gös-
              hata  ayıklayıcılara  (debugger)  ve                         terdiği  düşünülen  özellikler  vektörünü
              sanallaştırma ortamlarına karşı tek- devlet destekli saldırılara   elde  etmektedirler.  Sonrasında  maki-
              nikler  kullanmaktadır.  Bu  nedenle   kadar farklı amaçlar için   ne  öğrenmesi  kullanılarak  bu  özellik
              bu  zararlı  yazılım  örneğini  dinamik   kullanılmaktadır.  vektörünü  ifade  eden  yazılımın  zararlı
              olarak  incelemek  zararlı  yazılımın                        olup olmadığına karar verilmektedir. Bu
              gerçek ortamdaki davranışı ile ilgili                        yöntemlerin  yanında  çalışma  sırasında
              yanlış  bilgiler  edinmemize  sebep                          işletilen  komutlar  ve  API  çağrılarından
              olabilir. Zararlı yazılım analistleri genelde bu iki yakla-  oluşan zaman dizileri, bu dizilerden elde edilen çizgeler         Fred Cohen 1987’de yaptığı çalışmada bir yazılımın bilgisayar virüsü olup
              şımı beraber kullanarak analiz işlemini gerçekleştirirler.   de statik özellikleri kullanan yöntemlere benzer şekilde               olmadığının karar verilemez bir problem olduğunu kanıtlamıştır.
                                                               makine öğrenmesi modellerinde kullanılmaktadır.
              Makine öğrenmesi de bu analiz yaklaşımları kullanıla-
              rak elde edilen statik ve dinamik özelliklerden faydala-  Makine Öğrenmesinin Sınıflandırma                             Zararlı yazılım araştırmasında kullanılan bilgi kaynakları-  4.  Geri  derleme  (decompilation)  işlemi  yüksek  seviyeli
              nır. Statik özelliklerden en çok program kodu, karakter   Dışı Kullanım Alanları                                        nın seçilmesinde günümüzde yaygın kabul görmüş olan   dillerden makine diline çevrim işleminin tersi olup, maki-
              dizileri ve dosya başlığında bulunan dinamik kütüphane   Makine  öğrenmesi  yöntemlerinin  zararlı  yazılım  araş-      derin öğrenme yaklaşımı iki yönüyle mantıklıdır. Birinci-  ne kodunu girdi olarak alıp yüksek seviyeli dil eşdeğerini
              bilgisi  makine  öğrenmesi  modellerinde  kullanılmıştır.   tırmasında  kullanımı  sınıflandırma  ile  sınırlı  değildir.   si özellik seçiminin insan eliyle yapılması kişilerin alana   üretme işidir. Derleme bilgi kayıplı bir işlem olduğundan
              Program  kodu  ve  karakter  dizileri  çoğunlukla  n-gram-  Zararlı  yazılımların  konak  dosya  üzerinde  yaptığı  de-  özgü bilgisine bağlı olup, önemli bilgilerin model tarafın-  makine  kodunun  üretildiği  kaynak  kodları  elde  etmek
              lar  ve diğer özellik mühendisliği yöntemleri kullanılarak   ğişikliklere ait örüntülerin tanınması ve otomatik imza    dan elde edilememesine neden olabilir. İkincisi ise, za-  çoğu zaman imkânsızdır.
                3
              sabit sayıda elemanı olan özellik vektörlerine dönüştü-  üretilmesi gibi amaçlar için de bu yöntemlerden fayda-         rarlı yazılım geliştiricilerinin AV ürünlerine karşı teknikler
              rülür. Ardından bu özellik vektörleri makine öğrenmesi   lanılmıştır.  Yazılım  tersine  mühendisliği  kapsamında       geliştirmeleridir. Bu nedenle insan eliyle seçilen özellik-
              modeline girdi olarak verilir. Dinamik özellik olarak uy-  yapılan araştırmalarda geri derleme  işlemi için makine      leri kullanan ve veriye ait tüm bilgiyi elde edemeyen bir
                                                                                           4
              gulama programlama arayüzüne (application program-  öğrenmesini kullanan çalışmalar vardır. Özellikle tersi-            sınıflandırıcının atlatılması daha kolaydır. Araştırmacılar   Referanslar
              ming interface - API) yapılan fonksiyon çağrıları, sistem   ne  mühendislik  uygulamalarında  yapay  zekâ  kullanan     statik ve dinamik özellikleri beraber kullanan, veriyi olası
              çağrıları,  kontrol  akış  çizgeleri  (control-flow  graph)  ve   araçların  geliştirilmesi  zararlı  yazılım  analiz  sürecine   en ham haliyle işleyen derin öğrenme modellerine yönel-  I. Goodfellow, Y. Bengio ve A. Courville, Deep learning.
              yazılımın oluşturduğu ağ trafiği veri kaynağı olarak kul-  yarar sağlayacaktır.                                         melidirler.                                         MIT  Press,  2016,  http://www.deeplearningbook.org.
              lanılmıştır.                                                                                                                                                                Erişim tarihi: Ocak 2020.
                                                               Sonuç                                                                  Açıklamalar                                         P.  Szor,  The  art  of  computer  virus  research  and  de-
              Zararlı Yazılım Sınıflandırmada Makine           Zararlı  yazılım  araştırması  konusunda  yapılan  makine              1.  Bilgisayar  virüsleri  için  mutasyon  kavramı  geçmişte   fense.  Addison-Wesley  Professional,  2005,  ISBN:
              Öğrenmesi                                        öğrenmesi çalışmaları çoğu zaman benzer verileri işle-                 virüs geliştiricileri tarafından da kullanılmıştır. Virüslere   0321304543
              Makine öğrenmesi ile zararlı yazılım sınıflandırma ko-  yen alanlardaki başarılı modeller kullanılarak yapılmak-        kendini  değiştirme  yeteneği  kazandıran  ve  çoğunlukla   G.  J.  Tesauro,  J.  O.  Kephart  ve  G.  B.  Sorkin,  “Neural
              nusundaki ilk denemeler gerçekleştirilirken hesaplama   tadır.  Bilgisayarlı  görü,  doğal  dil  işleme  ve  finans  gibi   statik kütüphaneler olarak dağıtılan bu yazılımlar geliş-  networks for computer virus recognition,” IEEE Expert,
              kabiliyeti  bu  günkü  kadar  gelişmiş  değildi.  Bu  neden-  alanlarda  yoğunlaşan  makine  öğrenmesi  çalışmaları     tiriciler tarafından “mutasyon motoru (mutation engine)”   cilt 11, sayı 4, sayfa 5–6, Ağustos 1996, ISSN: 2374-
              le  araştırmacılar  çalışmalarında  çoğunlukla  program   zararlı yazılım araştırması konusundaki gelişmeleri des-      olarak adlandırılmıştır.                            9407. DOI: 10.1109/64.511768.
              kodundan  çıkarılan  istatistiksel  özellikleri  veya  dosya   teklemekle  beraber,  eldeki  verilerin  doğası  birbirinden                                                 F. Cohen, “Computer viruses: Theory and experiments,”
              başlığından çıkarılabilen özellikleri kullanan yapay zekâ   farklıdır.  Örneğin  statik  kaynaktan  elde  edilen  komut   2. Burada bahsedilen Bilgi Kuramı, dilimize Enformasyon   Computers & Security, cilt 6, sayı 1, sayfa 22–35, 1987,
              modelleri tasarlamışlardır.                      dizisi çalıştırılma esnasında sıralı olarak çalışmamakta-              Teorisi  şeklinde  de  çevrilen;  bilginin  ölçülmesi,  saklan-  ISSN: 0167-4048. DOI: https://doi.org/10.1016/0167-
                                                               dır. Bu nedenle bir hisse senedinin değer değişimi ko-                 ması ve taşınmasıyla ilgilenen matematik dalıdır.    4048(87)90122-2.
              Güncel  çalışmalarda  ise  hesaplama  yeteneğinin  art-  mut dizisi ile aynı özellikte değildir. Aynı şekilde bir DNA                                                       E. Gandotra, D. Bansal ve S. Sofat, “Malware analysis
              masıyla  bayt  dizileri  üzerinde  farklı  yöntemlerle  özel-  dizisi, sistem çağrı dizisiyle aynı özellikte değildir. Bu da   3. N-gram bir dizi üzerinde bulunan n uzunluktaki sıralı   and  classification:  A  survey,”  Journal  of  Information
              lik seçimi ve özellik indirgeme yapılmış, bu yöntemler   zararlı yazılım araştırmasına özgü modellerin çalışılma-       alt-dizileri ifade eder. Örneğin a = [a1, a2, a3] dizisinde   Security, 2014.
              sonrasında  elde  edilen  özellikler  çoğunlukla  en  yakın   sı gerekliliğini göstermektedir.                          2-gramlar [a1, a2] ve [a2, a3] şeklindedir.





                                                          64                                                                                                                        65
   61   62   63   64   65   66   67   68   69   70   71