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