Rehber Anti-Virüs'lerin çalışma mantığı

Merhaba 😇

Bugün açtığım ankette çoğunluk Anti-Virüs'lerin Çalışma Mantığı rehberini ilk önce olmasını istedi.


Bugün sizlere bir Anti-Virüs yazılımın temel çalışma mantığını, zararlı algılama ve durdurma mantığını anlatmaya çalışacağım.

Not: Bu rehberimiz genel olarak metin tabanlı. Görsel içerik ile pek ilgisi olmadığı için görsel kullanmadım.

Makalemiz 8 ana maddeden oluşuyor;
  • Anti-Virüs nedir?
  • Anti-Virüs temel olarak nasıl işler?
  • Algılama yöntemleri.
  • Koruma yöntemleri.
  • Gerçek zamanlı koruma nasıl çalışır?
  • Veri tabanında olmayan zararlı yazılımlar nasıl tespit edilir?
  • Program çalışma modları nedir?
  • Anti-Virüs yazılımları zararlı yazılımları nasıl durdurur?
ewgpowehgewg.jpg


Öncelike Anti-Virüs nedir?

Anti-Virüs
, halk arasında virüs olarak geçen, aslında zararlı olarak tanımlanan yazılımları tespit eden ve sisteme/donanıma zarar vermeden durduran yazılımların genel adıdır.


Anti-Virüs temel olarak nasıl işler?

Anti-Virüs yazılımları
, veritabanındaki bilgilerle belirli kod bitlerini karşılaştırarak dosyayı tarar ve veritabanında bir kod çoğaltan bir desen bulursa, zararlı olarak kabul edilir ve söz konusu dosyayı karantinaya alır veya siler.

Bir sisteme giren tüm program dosyaları, (yürütülebilir, yani *.exe dosyaları) Anti-Virüs taramasından geçer. İmzalarla eşleşenler zararlı olarak sınıflandırılır ve kara listeye alınır. Diğer program dosyaları daha sonra Savunma + HIPS (Ana Bilgisayar İzinsiz Giriş Önleme Sistemi) üzerinden geçer. Burada bilinen dosyaların girişine izin verilir ve bilinmeyen dosyalar, iyi veya kötü olup olmadıklarına bakılmaksızın Savunma + SandBox'a gönderilirken sistemde çalışır. Bunların çalışmasına izin verilir, ancak yalnızca kısıtlı bir ortamda izin verilir. Kullanıcının iyi dosyalar olarak izin verdiği dosyalar Beyaz Liste'ye eklenirken, diğerleri sanal alanda kalacak ve daha sonra analiz için Anti-Virüs analiz merkezine gönderilecektir.


Algılama yöntemleri;
  • İmza Tabanlı Algılama.
  • Sezgisel Algılama.
  • Davranışa Dayalı Algılama.
  • SandBox Algılama.
  • Veri Madenciliği Teknikleri İle Algılama.
İmza Tabanlı Algılama: Bu, tüm *.exe dosyalarını denetleyen ve bilinen zararlı listesiyle ve diğer kötü amaçlı yazılım türleriyle doğrulayan zararlı koruma yazılımlarında en yaygın olanıdır. Veya bilinmeyen yürütülebilir dosyaların bilinmeyen zararlı bir işareti olarak herhangi bir yanlış davranış gösterip göstermediğini kontrol eder. Dosyalar, programlar ve uygulamalar temel olarak kullanımdayken taranır. Yürütülebilir bir dosya indirildikten sonra herhangi bir kötü amaçlı yazılım için anında taranır. Virüsten koruma yazılımı, erişim taramasında arka plan olmadan da kullanılabilir, ancak sisteminize bulaştıktan sonra kötü amaçlı yazılımları kaldırmak karmaşık olduğundan, erişim taramasında kullanılması her zaman önerilir.

Sezgisel Algılama: Bu algılama türü en yaygın olarak imza tabanlı algılama ile birlikte kullanılır. Sezgisel teknoloji, Anti-Virüs programlarının çoğunda kullanılmaktadır. Bu, zararlı koruma yazılımının, en son zararlı tanımlarının yokluğunda bile yeni veya bir varyantı ya da değiştirilmiş bir kötü amaçlı yazılım sürümünü algılamasına yardımcı olur. Anti-Virüs yazılımları çalışma zamanı sanal ortamında (SandBox) şüpheli kod bulunan duyarlı programları veya uygulamaları çalıştırarak sezgisel yöntemler kullanır. Bu, güvenlik açığından etkilenen kodun gerçek dünya ortamına bulaşmasını önler.

Davranışa Dayalı Algılama: Bu tür algılama, İzinsiz Giriş Algılama mekanizmasında kullanılır. Bu, yürütme sırasında kötü amaçlı yazılımın özelliklerini algılamaya daha fazla odaklanır. Bu mekanizma, kötü amaçlı yazılımları yalnızca kötü amaçlı yazılım eylemleri gerçekleştirirken algılar.

SandBox Algılama: Büyük olasılıkla davranışa dayalı algılama yöntemine göre işlev görür. Ne tür eylemler gerçekleştirdiğini izlemek için sanal ortamdaki tüm uygulamaları yürütür. Anti-Virüs yazılımı, programın oturum açmış eylemlerini doğrulayarak, programın kötü amaçlı olup olmadığını belirleyebilir.

Veri Madenciliği Teknikleri İle Algılama: Bu, bir kötü amaçlı yazılımı tespit etmedeki en son trendlerden biridir. Bir dizi program özelliğiyle Veri madenciliği, programın kötü amaçlı olup olmadığını bulmaya yardımcı olur.


Koruma Yöntemleri;

2 tip durdurma yöntemi vardır;

  • Sisteme girmeden durdurma.
  • Sisteme girdikten sonra durdurma.
Sisteme girmeden durdurma: Bu, genel olarak sunucu bilgisayarlarının kullandığı yöntemdir. Zararlı içeriye girmeden durdurma işlemi yaparlar. Bunun için davranış tabanlı analiz çalışır.

Örnek yazılım: McAfee.

Sisteme girdikten sonra durdurma: Bu, daha çok ev kullanıcılarını ilgililendiren bir yöntem. Zararlı sisteme girdiği anda müdahale edilir.

Örnek yazılımlar: Kaspersky, Norton, BitDefender.


Gerçek zamanlı koruma nasıl çalışır?

Gerçek zamanlı koruma
, adından da anlayacağınız üzere siz bilgisayarı kullanırken arka planda sizi izlemeye devam eder. Kullandığınız programları, indirdiğiniz dosyaları tek tek analiz eder. Siz farkında olmadan arka planda bir zararlı inebilir. Anti-Virüs yazılımları sisteme giren, indirilen, harici USB cihazlar üzerinden aktarılan dosyalar, harici USB cihazlar takıldığı anda analiz etme gibi bazı özelliklere sahiptir.


Veri tabanında olmayan zararlı yazılımlar nasıl tespit edilir?

Evet, şimdi geldik Anti-Virüs yazılımlarını birbirinden ayıran bölüme. Her Anti-Virüs yazılımının bir veri tabanı vardır. Yeni çıkan zararlı yazılım bu veri tabanlarında genel olarak yer almaz.

O yüzden Makine Öğrenmesi, yani Yapay Zeka devreye girer.

Yapay zeka, daha önce tespit edilmiş ne kadar zararlı yazılım varsa, bunların kimliklerini, çalışma mantıkları ile beslenmiş bir algoritmadır.

Zararlı yazılım önce veri tabanında var mı diye Anti-Virüs yazılımı denetleme yapar. Tabii tek denetleme yaparken sadece veri tabanını kullanmıyor. Yapay zekayı'da kullanıyor. Eğer veri tabanında ilgili dosyanın tanımı yoksa yapay zeka algroritması taramaya başlar dosyayı. Eğer zararlı olarak algılarsa otomatik olarak ilgili Anti-Virüs yazılımının veri tabanı merkezinde gönderir ve veri tabanı tanımlarına ekler. Tabii bu aşamada ilgili zararlı yazılım karantinaya alınır.

Yapay zeka ile tespit edilen zararlı yazılımların Anti-Virüs yazılımları türüne göre sonuna !ml etiketi gelir. !ml etiketi Machine-Learning, yani makine öğrenmesi ve sezgisel algılama yöntemi ile tespit edildiğini gösterir.


Program çalışma modları nedir?

2 tip
çalışma modu vardır;

  • Kernel Mode (Çekirdek Modu).
  • User Mode (Kullanıcı Modu).
Kernel Mode (Çekirdek Modu): Cihaz sürücüleri, Anti-Virüs yazılımları, Anti-Cheat yazılımları (Riot Vanguard gibi) gibi yazılımlar Kernel Mode ile çalışır. Kernel Mode, direkt olarak çekirdek üzerinden komut yürütmeyi sağlar. Bir program Kernel Mode olarak çalışıyorsa eğer hata verirse sisteme mavi ekran verdirtebilir. Bu yüzden bu tip yazılımlar yüksek mühendislik ve programlama bilgisi ile yazılırlar.

Anti-Virüs yazlımları, Kernel Mode ile User Mode arasında geçiş yaptığı için yüksek izne sahiptirler.

User Mode (Kullanıcı Modu): Web tarayıcıları, oyunlar, yazılım geliştirme programlarının bir kısmı, kullandığınız diğer yazılımlar User Mode olarak çalışır. User Mode, direkt olarak çekirdek üzerinden komut yürütmez. Onun yerine daha üst katman olan İşletim Sistemi katmanı üzerinden komut yürütür. Bu yüzden bu tip yazılımlar hata verdiği zaman mavi ekran verme ihtimali düşüktür.

Kullanıcı Modu (User Mode)

Çekirdek Modu (Kernel Mode)
Kullanıcı Modu, uygulama programlarının yürüttüğü ve başlattığı kısıtlı bir moddur.Çekirdek Modu, bilgisayarın donanım kaynaklarına erişirken girdiği ayrıcalıklı moddur.
Modu:Modu:
Kullanıcı Modu, bağımlı mod veya kısıtlı mod olarak kabul edilir.Çekirdek modu, sistem modu, ana mod veya ayrıcalıklı moddur.
Adres Alanı:Adres Alanı:
Kullanıcı modunda, bir işlem kendi adres alanını alır.Çekirdek Modu'nda, işlemler tek adres alanı alır.
Kesinti:Kesinti:
Kullanıcı Modu'nda, bir kesme oluşursa, yalnızca bir işlem başarısız olur.Çekirdek Modu'nda, bir kesinti oluşursa, tüm işletim sistemi başarısız olabilir.
Kısıtlamaları:Kısıtlamaları:
Kullanıcı modunda, çekirdek programlarına erişmek için kısıtlamalar vardır. Bunlara doğrudan erişilemiyor.Çekirdek modunda, hem kullanıcı programlarına hem de çekirdek programlarına erişilebilir.

Arasındaki Fark: Bilgisayar, kullanıcı modunda veya çekirdek modunda çalışır. Kullanıcı Modu ve Çekirdek Modu arasındaki fark, kullanıcı modunun uygulamaların çalıştığı kısıtlı mod olması ve çekirdek modunun bilgisayarın donanım kaynaklarına erişirken girdiği ayrıcalıklı mod olmasıdır. Bilgisayar, bu iki mod arasında geçiş yapabilir. Sık sık bağlam değiştirme hızı yavaşlatabilir. Ancak tüm işlemleri çekirdek modunda yürütmek mümkün değildir.

Bunun nedeni; Bir işlem başarısız olursa, tüm işletim sistemi başarısız olabilir (çökebilir).

Anti-Virüs yazılımları zararlı yazılımları nasıl durdurur?

İnternette bu konu hakkında pek bilgi bulamazsınız
:)

Anti-Virüs yazılımları Çarpan Kodu (Çekirdek Kodu) kullanarak zararlı yazılımları durdurur. Bir zararlı yazılımı doğrudan kapatmak bazen mümkün olmayabiliyor. Bu yüzden Anti-Virüs yazılımları Kernel Mode olarak çalışır. Kernel Mode izinleri ile bir programı Anti-Virüs yazılımın algoritmasının gücüne göre durdurabilme yeteneği vardır. Her bir programın bir kimliği var. GUID olarak programların çalışma kimliği ve durdurma kimliği vardır. Zararlı olarak tespit edilen program zorla durdurma yapılır. Zorla durdurma, ilgili zararlı yazılımın GUID durdurma değeri ile yapılır. Program durmamak için elinden geleni yapabilir. Bu aşamda Anti-Virüs yazılımının çekirdek gücü farkını koyuyor. Anti-Virüs yazılımının çekirdeği ne kadar güçlü ve yetenekli olarak yazıldıysa o kadar durdurma oranı yüksektir.

Genel olarak Anti-Virüs yazılımlarının çalışma mantığı bu şekilde :)

Not: Her Anti-Virüs yazılımının kendi algoritması, kendi veri tabanı olduğu için farklılık gösterebilir.

Yazılım ile ilgili rehberlerimin devamı gelecek.

VirusTotal Rehberimi inceleyebilirsiniz:


İyi çalışmalar, kolay gelsin 😇
 
Son düzenleme:
İlgili yerleri söyler misiniz? Düzelteyim hemen, hızlı yazarken hatalı yazmış olabilirim.



Şöyle; Zararlı temizlerken Kernel Mode'a geçiyor genel olarak Anti-Virüs'ler. Sürekli olarak Kernel Mode olarak çalışmıyor yani.
Ufak tefek hatalar zaten :D.
1677772541627.png

Sondaki R.
1677772648416.png

E.
1677772670190.png


Ufak hatalar zaten çok önemli değiller sadece garip bir şekilde gözüme çarptılar.
 
sisteme girmeden durdurma: bu, genel olarak sunucu bilgisayarlarının kullandığı yöntemdir. Zararlı içeriye girmeden durdurma işlemi yaparlar. Bunun için davranış tabanlı analiz çalışır.

Av zararlı inerken mi tarıyor yani? Yoksa içeriye girmeden kastınız zararlının çalıştırılması mı?
Faydalı rehber bu arada.
 
Durdurma kısımları hariç katılıyorum. Sisteme girip girmemesine göre değil de, gelen giden paket protokollerine göre önleme yapıyorlar. Ürüne göre değişir fakat net bir sınıflandırma yok. Elinize sağlık.
 

Geri
Yukarı