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

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
   53   54   55   56   57   58   59   60   61   62   63