Page 59 - bilgem-teknoloji-dergisi-12
P. 59

Siber Güvenlik                                                                                   BILGEM
                                                                                                  TEKNOLOJI







               İşte bu noktada sistem ve kütüphane çağrılarından   açıdan  ele  almaktadırlar.  Bunlardan  ilki,  farklı  iş-
               yararlanma  ihtimali  doğmuştur.  Sistem  çağrıları   lemler için verilerin ayrı olarak değerlendirilmesidir.
               kullanıcı uygulamalarının* işletim sistemi arayüzü-  Bu yaklaşımda her bir işlem için toplanan veri kendi
               nü oluşturduğundan, uygulamanın sistem kaynak-   özelinde  değerlendirilir.  Örneğin  cmd.exe  ve  exp-
               larına erişim taleplerini ifade etmektedir. Bu şekilde   lorer.exe  işlemlerinin  ürettiği  sistem  çağrıları  ayrı
               kullanıcı uzayında çalışan programlar dosya siste-  ayrı incelenerek ilgili işlemin zararlı davranışa sahip
               mi, aygıtlar ve bellek alanı gibi kaynaklara erişebil-  olup olmadığı denetlenir. Diğer bir yaklaşımda ise,
               mektedir. Yazılım kütüphaneleri ise basit kullanımlı   işletim sistemine yapılan tüm çağrıların bir kaynak
               işletim sistemi arayüzü sunmak ve programlara ça-  tarafından  üretildiği  kabul  edilerek  değerlendirme
               lışma zamanı ortamı sağlamak amacıyla oluşturu-  yapılmaktadır. Bu yaklaşımda uygulamaların sergi-
               lan yazılımlardır. Çoğunlukla çalışma anında işletim   lediği zararlı davranışın kaynağını bulmak zorlaşa-
               sistemi tarafından belleğe yüklenen dinamik kütüp-  caktır. Ancak zararlı davranışı sergileyen program
               haneler** olarak bulunmaktadırlar.               birden  fazla  yazılım  parçasından  oluşuyor  ise  bu
                                                                davranışı tespit etmek mümkün olabilir.
               İşletim sistemlerinin iki temel işlevi vardır. Bunlar-
               dan ilki sahip olduğu donanım kaynaklarını yönet-  Sistem çağrı dizisi çalışma şekli itibariyle rastgele
               mektir.  İkincisi  ise  sistem  üzerinde  çalışan  uygu-  olmak durumundadır.Bunun en basit nedenlerinden
               lamalara arayüz sağlamaktır. Bu işlevi çoğunlukla   biri  kullanıcı  yazılımı  tarafından  sistemden  talep
               sistem ve kütüphane çağrıları aracılığıyla yerine ge-  edilen  kaynakların  mevcut  olmamasıdır.  Bu  duru-
 Bu yaklaşımları incelemek gerekirse, ilk yaklaşım   üretmek için harcanan emeğin çoğu farklı biçimde-  tirir. Bu nedenle bu çağrılar program kodunun sistem   ma örnek olarak brk(2) veya mmap(2) çağrılarının
 çok  fazla  yanlış-pozitif  üretilmesine  yol  açacak-  ki verileri anlamlandırmaya çalışmak ve eldeki veri   ve  çalışma  ortamı  ile  etkileşimini  göstermektedir.   başarısız  sonuçlanması  gösterilebilir.  Yeterli  bel-
 tır. Bu da hem sistemin güvenilirliğini zedeleyecek   yığınını yönetmeye harcanmaktadır. Sonuç olarak   Bir  programın  sırasıyla  hangi  dosyalara  eriştiğini,   leğin  olmadığı  durumlarda  çoğunlukla  programın
 hem de inceleyen kişilerin zamanına mâl olacaktır.   üretilen yazılımda ise yine insanların oluşturacağı   hangi  işlemleri  başlattığını,  ne  şekilde  bellek  tah-  sonlandığı görülmektedir. Bu da programın dinamik
 Bu tip yaklaşımda bazı güvenlik ürünleri kullanıcı-  kurallar ile gürültülü veri üzerinde saldırılar tespit   sis ettiğini ve hangi ağ arayüzleriyle haberleştiğini   davranışının çevresel etkilere göre değişebileceğini
 lara tek tek olayları göstererek, kullanıcının olaya   edilmeye  çalışılır.  Ayrıca  ikinci  yaklaşımda  yapay   sisteme  yapılan  çağrılar  üzerinden  görebiliriz.  Bu   göstermektedir. Bir yandan da çok çekirdekli ve iş-
 izin  vermesini  veya  engellemesini  istemektedir.   zekâ kullanımıyla kuralların otomatik üretimi üze-  nedenle sistem ve kütüphane çağrıları zararlı dav-  lem parçacıklı bilgisayar sistemleri işlemlerin çalış-
 Kullanıcıdan alınan bu bildirimler ile kurallarda iyi-  rinde çalışmalar yapılmaktadır.   ranışı göstermesi açısından bahsi geçen ve belirli   ma sırası açısından rastgele olmak durumundadır.
 leştirme yapılmaktadır. Örneğin burada ssh “dae-  kurallara göre oluşturulan alarmlardan daha detaylı   Bu nedenle çok işlem parçacığı ile çalışan bir prog-
 mon”ı  güvenilir  yazılım  listesine  alınabilir.  Ancak   Bilindiği gibi son yıllarda makine öğrenmesi çalış-  bilgi  sağlamaktadır.  Programın  dinamik  ortamda   ram için sistem çağrı dizisi farklı şekillerde oluşabi-
 kullanıcılar her zaman tekil olayları yorumlayabi-  malarında insan güdümlü özellik mühendisliğinin   çalıştırılması sonucunda elde edilen sistem ve kü-  lir. Ancak örüntü tanımada kullanılan uygun makine
 lecek durumda olmayabilirler. Bu nedenle iyileştir-  yeri  azalmış  bunun  yerine  özellikleri  makinelerin   tüphane çağrı verileri ile ilgili bilgiler yan sayfadaki   öğrenmesi algoritmalarının bu sorunların üstesin-
 meler bu yaklaşımı kullanılabilir kılmamaktadır.   öğrenebilmesi üzerine çalışmalar yapılmıştır. Ço-  tabloda görülmektedir.   den geldiği görülmüştür.
 ğunlukla  yapılan  bu  çalışmalar  sayesinde  yapay
 İkinci yaklaşımda ise yaygın olarak kullanılan kayıt   zekâ uygulamaları günlük hayatımızda kullanabi-  Sistem ve kütüphane çağrılarının benzer özellikleri-  Açıklamalar
 yönetim yazılımları, farklı kaynaklardan elde etti-  leceğimiz  kalitede  ürünler  ortaya  çıkarabilmiştir.   nin yanında birbirlerinden farklı özellikleri de vardır.   * Kullanıcı uygulamaları, uzun adıyla kullanıcı uza-
 ği kayıtları ilişkilendirerek saldırıları tespit etmeye   Buradan  da  anlaşılabilir  ki;  insan  eliyle  yapılan   Örneğin kütüphane çağrıları birbirlerinin yerine kul-  yı  uygulamaları  çekirdek  uzayı  ve  kullanıcı  uzayı
 çalışmaktadır. Ancak kayıtlar kayıplı ve tekrarlı bil-  özellik mühendisliği sonucunda elde edilen veriler-  lanılabilir. Bir işlevi gerçekleştirebilecek birden fazla   olarak ayrılan yetki bölgelerinde çalışan yazılımları
 gi içerdiğinden bu tip yaklaşımlar eğreti çözümler   den yola çıkarak yorum yapmaktansa, saf verinin   kütüphane fonksiyonu vardır. Ancak sistem çağrıla-  sınıflandırmak için kullanılan bir terimdir. Özellikle
 ortaya çıkarmaktadır. Bunun yanında bu yazılımları   yorumlandığı yöntemler daha başarılı olmaktadır.  rı bu özelliğe sahip değildir. Bu da sistem çağrıları-  günümüz  işlemcilerinin  bellek  bölgelerine  erişimi

               nın kullanımını yararlı kılmaktadır.             kısıtlayan  özellikleri  sayesinde  gerçekleştirilen  bu
 Sorular  İşletim sistemi çağrıları  Kütüphane çağrıları        ayrım, işletim sistemi çekirdeğinde çalışan yazılım-
               Zararlı davranış tespitinde yaklaşımlar ve zorluklar  ları korumak için kullanılan bir mekanizmadır.
 Muhatabı kimdir?   İşletim sistemi çekirdeği  İşletim sistemi çekirdeği   Zararlı davranış tespiti ile ilgili güncel uygulamalar   ** Bahsedilen yazılım kütüphaneleri yaygın olarak
               incelendiğinde  görülmüştür  ki  günümüzde  yaygın
 Dinamik kütüphane fonksiyonları
               olarak kullanılan yaklaşımlar zararlı davranış tespiti   işletim sistemi kütüphaneleri olarak da adlandırılır-
 Nasıl tetiklenir?  Yazılım kesmesi ve işlemci   Program içerisinde ilgili   problemine tatmin edici bir çözüm bulmamaktadır.   lar. Örneğin Microsoft Windows kütüphaneleri ola-
 komutlarıyla  fonksiyonun çağırılmasıyla  Bunun  yanında  sistem  ve  kütüphane  çağrılarının   rak bahsedilen kütüphaneler Microsoft’un Windows
               zararlı davranışları tespit etmek için gereken bilgi-  işletim sistemleri için oluşturulmuş kütüphaneler-
 Çalışması için gereken   Kesme yönetimi ve işlemci sis-  Dinamik bağlayıcı  yi  barındırdığı  ifade  edilmiştir.  Bu  nedenle  sistem   dir. Benzer bir örneği ise GNU C kütüphanesi (glibc)
 mekanizmalar nelerdir?  tem çağrı mekanizmaları  ve kütüphane çağrı verileri kullanılarak oluşturulan   olarak adlandırılan Linux kütüphaneleridir.
               modeller  zararlı  davranışların  tespiti  için  kullanıl-  Kaynakça
 Yönetilebilir, iyi tanımlanmış ve   malıdır.                   • syscalls(2) — Linux manual page
 İşletim sisteminin sunması ge-  basit bir arayüz sunmak; kulla-  • Programming reference for the Win32 API - https://docs.
 Amacı nedir?                                                   microsoft.com/en-us/windows/win32/api
 reken temel özellikleri sağlamak  nıcı uzayında gerçeklenebilecek   Sistem ve kütüphane çağrılarını kullanarak zararlı   • Computer Immune Systems - https://www.cs.unm.edu/~im-
 servisleri sağlamak  davranış  tespitini  hedefleyen  sistemler,  verileri  iki   msec






 56                                                       57
   54   55   56   57   58   59   60   61   62   63   64