All postsTüm yazılar
SecurityGüvenlik

How antivirus actually finds malware: fingerprints, rules and behaviourAntivirüs zararlı yazılımı gerçekte nasıl bulur: parmak izleri, kurallar ve davranış

A look inside a modern antivirus engine: why a single hash catches millions of copies, what YARA rules are, and why watching behaviour is what stops brand-new threats.Modern bir antivirüs motorunun içine bir bakış: tek bir özetin neden milyonlarca kopyayı yakaladığı, YARA kurallarının ne olduğu ve yepyeni tehditleri durduranın neden davranışı izlemek olduğu.

By Athene SoftworksAthene Softworks3 min read3 dk okuma

An antivirus has a hard job. It has to look at every program and file on your computer, decide in a fraction of a second whether each one is dangerous, and almost never be wrong in either direction. Miss a threat and you get hurt; flag a real program and you lose trust in the tool.

No single technique can do all that. Modern antivirus, including our own Agamemnon, stacks several layers, each catching what the others miss. Here's how they work, from simplest to smartest.

Layer 1: fingerprints (hashes)

Every file can be run through a hash function such as SHA-256, which turns it into a short, fixed-length string. Change even one byte of the file and the hash changes completely. Two files with the same SHA-256 hash are, for all practical purposes, the same file.

shasum -a 256 Installer.dmg
3f1c…9a7e  Installer.dmg

Security researchers share the hashes of malware they find in public databases like MalwareBazaar. An antivirus can download tens of millions of these and check every new file against them almost instantly, using no cloud connection and revealing nothing about your files.

Strength: fast, exact and essentially no false alarms. Weakness: it only catches files someone has already seen. Attackers rebuild their malware constantly so each copy has a fresh hash.

Layer 2: rules and signatures

Instead of matching a whole file, a rule looks for patterns inside it: a particular sequence of bytes, a set of suspicious text strings, or a combination like "this program mentions browser password files and a Telegram upload address and is under 2 MB."

The most common format is YARA, which reads almost like plain English:

rule Example_Stealer {
  strings:
    $a = "Login Data" ascii
    $b = "wallet.dat" ascii
    $c = "api.telegram.org" ascii
  condition:
    all of them and filesize < 2MB
}

Apple's own XProtect is built on YARA rules, and ClamAV uses a similar signature system. A good rule catches a whole malware family, including copies with new hashes.

Weakness: attackers can scramble ("obfuscate") their code so the strings are hidden until the program runs. That's why scanners also try to unpack and deobfuscate scripts before matching.

Layer 3: heuristics

Heuristics are educated guesses about a file's shape. Is the program unsigned? Was it downloaded a minute ago? Is it packed in a way normal apps aren't? Does it ask for permissions that don't fit what it claims to be? No single answer is proof, but several red flags together raise a score, and past a threshold the file gets a closer look or a warning.

This is where false alarms come from, so heuristics need careful tuning. Before each Agamemnon release we scan tens of thousands of legitimate programs to make sure the rules leave them alone.

Layer 4: behaviour

The strongest layer doesn't look at what a file is but at what it does while it runs. A program can hide its code, but sooner or later it has to act. Behaviour monitoring watches for things like:

  • an unknown program opening browser password and cookie files,
  • a process rapidly rewriting many documents (ransomware),
  • something adding itself to start at login without asking,
  • a script downloading a file and immediately running it.

This is how brand-new malware that no database has seen yet gets stopped. The challenge is speed: a stealer can finish in seconds, so the monitor has to decide and act in real time, not after a scheduled scan.

Why layers matterEach layer covers the others' blind spots. Hashes catch known files instantly, rules catch families, heuristics catch suspicious newcomers and behaviour catches whatever slips past all three.

Where the cloud fits in

Many antiviruses upload unknown files to the vendor's cloud for analysis. That can help, but it also means your files leave your computer. Agamemnon keeps detection on your device by default. When it does ask an online service, it sends only a file's hash, never the file itself.

No antivirus catches everything

Any company that claims 100% detection is selling something. Independent tests show even the best products miss some threats, and the newest malware is usually designed to beat current tools. Antivirus is one layer of your defence, alongside updates, backups, a password manager and the habit of not running things you don't trust.

Bir antivirüsün işi zordur. Bilgisayarınızdaki her programa ve dosyaya bakmalı, her birinin tehlikeli olup olmadığına saniyenin küçük bir kesrinde karar vermeli ve iki yönde de neredeyse hiç yanılmamalıdır. Bir tehdidi kaçırırsa zarar görürsünüz; gerçek bir programı işaretlerse araca olan güveninizi kaybedersiniz.

Hiçbir teknik bunların hepsini tek başına yapamaz. Bizim Agamemnon'umuz dahil modern antivirüsler, her biri diğerlerinin kaçırdığını yakalayan birkaç katmanı üst üste koyar. En basitten en akıllıya doğru nasıl çalıştıklarına bakalım.

Katman 1: parmak izleri (özetler)

Her dosya, SHA-256 gibi bir özet (hash) fonksiyonundan geçirilerek kısa ve sabit uzunlukta bir dizeye dönüştürülebilir. Dosyanın tek bir baytını bile değiştirirseniz özet tamamen değişir. Aynı SHA-256 özetine sahip iki dosya, pratikte aynı dosyadır.

shasum -a 256 Installer.dmg
3f1c…9a7e  Installer.dmg

Güvenlik araştırmacıları buldukları zararlı yazılımların özetlerini MalwareBazaar gibi açık veritabanlarında paylaşır. Bir antivirüs bunlardan on milyonlarcasını indirip her yeni dosyayı neredeyse anında karşılaştırabilir; bulut bağlantısı gerekmez ve dosyalarınız hakkında hiçbir şey dışarı çıkmaz.

Güçlü yanı: hızlı, kesin ve yanlış alarm neredeyse yok. Zayıf yanı: yalnızca birinin daha önce gördüğü dosyaları yakalar. Saldırganlar zararlı yazılımlarını sürekli yeniden derler; böylece her kopyanın özeti yeni olur.

Katman 2: kurallar ve imzalar

Bir kural, dosyanın tamamını eşleştirmek yerine içindeki kalıplara bakar: belirli bir bayt dizisi, bir dizi şüpheli metin ya da "bu program tarayıcı parola dosyalarından ve bir Telegram yükleme adresinden söz ediyor ve 2 MB'tan küçük" gibi bir birleşim.

En yaygın biçim, neredeyse düz bir dil gibi okunan YARA'dır:

rule Example_Stealer {
  strings:
    $a = "Login Data" ascii
    $b = "wallet.dat" ascii
    $c = "api.telegram.org" ascii
  condition:
    all of them and filesize < 2MB
}

Apple'ın XProtect'i YARA kuralları üzerine kuruludur, ClamAV da benzer bir imza sistemi kullanır. İyi bir kural, yeni özetlere sahip kopyalar dahil bütün bir zararlı yazılım ailesini yakalar.

Zayıf yanı: saldırganlar kodlarını karıştırarak ("gizleyerek") metinleri program çalışana kadar saklayabilir. Bu yüzden tarayıcılar eşleştirmeden önce betikleri açmaya ve gizlemeyi çözmeye de çalışır.

Katman 3: sezgisel analiz

Sezgisel analiz, bir dosyanın biçimi hakkında bilgiye dayalı tahminlerdir. Program imzasız mı? Bir dakika önce mi indirildi? Normal uygulamaların paketlenmediği bir şekilde mi paketlenmiş? İddia ettiği şeye uymayan izinler mi istiyor? Tek bir yanıt kanıt değildir, ama birkaç kırmızı bayrak bir araya gelince puan yükselir ve belli bir eşiğin üstünde dosya daha yakından incelenir ya da uyarı verilir.

Yanlış alarmlar buradan doğar; bu yüzden sezgisel kuralların dikkatle ayarlanması gerekir. Her Agamemnon sürümünden önce, kuralların onlara dokunmadığından emin olmak için on binlerce meşru programı tarıyoruz.

Katman 4: davranış

En güçlü katman, bir dosyanın ne olduğuna değil, çalışırken ne yaptığına bakar. Bir program kodunu gizleyebilir, ama er ya da geç harekete geçmek zorundadır. Davranış izleme şunlara dikkat eder:

  • bilinmeyen bir programın tarayıcı parola ve çerez dosyalarını açması,
  • bir işlemin çok sayıda belgeyi hızla yeniden yazması (fidye yazılımı),
  • bir şeyin sormadan kendini oturum açılışında başlayacak şekilde eklemesi,
  • bir betiğin bir dosya indirip hemen çalıştırması.

Hiçbir veritabanının henüz görmediği yepyeni zararlı yazılımlar bu şekilde durdurulur. Zorluk hızdır: bir veri hırsızı işini saniyeler içinde bitirebilir, bu yüzden izleyicinin planlanmış bir taramadan sonra değil, gerçek zamanlı karar verip harekete geçmesi gerekir.

Katmanlar neden önemli?Her katman diğerlerinin kör noktalarını kapatır. Özetler bilinen dosyaları anında, kurallar aileleri, sezgisel analiz şüpheli yenileri yakalar; davranış izleme ise üçünü de aşan her şeyi yakalar.

Bulut bu resmin neresinde?

Birçok antivirüs bilinmeyen dosyaları analiz için üreticinin bulutuna yükler. Bu yardımcı olabilir, ama dosyalarınızın bilgisayarınızdan çıkması anlamına da gelir. Agamemnon tespiti varsayılan olarak cihazınızda tutar. Bir çevrimiçi servise başvurduğunda yalnızca dosyanın özetini gönderir, asla dosyanın kendisini değil.

Hiçbir antivirüs her şeyi yakalayamaz

%100 tespit vaat eden her şirket bir şey satmaya çalışıyordur. Bağımsız testler en iyi ürünlerin bile bazı tehditleri kaçırdığını gösterir ve en yeni zararlı yazılımlar genellikle mevcut araçları atlatmak için tasarlanır. Antivirüs; güncellemeler, yedekler, bir parola yöneticisi ve güvenmediğiniz şeyleri çalıştırmama alışkanlığıyla birlikte savunmanızın katmanlarından yalnızca biridir.

AgamemnonFree, open-source antivirus for macOS and Windows. Stops stealers in the act.macOS ve Windows için ücretsiz, açık kaynaklı antivirüs. Veri hırsızlarını iş üstünde durdurur.
Get AgamemnonAgamemnon’u edinin

Keep readingOkumaya devam edin

All posts →Tüm yazılar →