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

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
   62   63   64   65   66   67   68   69   70   71   72