yara ne demek?

YARA: Kötü Amaçlı Yazılım Arama Aracı

YARA, kötü amaçlı yazılım araştırmacıları ve güvenlik uzmanları tarafından kullanılan, metin veya ikili dosyalardaki kalıpları (örüntüleri) tanımlamaya yarayan bir kalıp eşleştirme aracıdır. Temel olarak, YARA, dosyaları tanımlamak ve sınıflandırmak için "YARA kuralları" adı verilen tanımlayıcı tanımlamalar kullanır.

İçindekiler

  1. Giriş
  2. Tarihçe
  3. Nasıl Çalışır?
  4. YARA Kuralları
  5. Kullanım Alanları
  6. Araçlar ve Entegrasyonlar
  7. Avantajları ve Dezavantajları
  8. Örnek YARA Kuralı
  9. Ayrıca Bakınız
  10. Kaynakça

1. Giriş <a name="giriş"></a>

YARA, kötü amaçlı yazılımları ve diğer türden dosyaları, karakteristik özellikleri veya kalıpları kullanarak tanımlamak için tasarlanmış güçlü ve esnek bir araçtır. Bu kalıplar, belirli metin dizileri, düzenli ifadeler veya ikili kodlar olabilir. YARA kuralları, karmaşık mantıksal ifadelerle birleştirilerek daha sofistike eşleştirme yetenekleri sunar.

2. Tarihçe <a name="tarihçe"></a>

YARA, Victor Manuel Alvarez tarafından yazılmıştır. İlk olarak 2007 yılında piyasaya sürülmüş ve o zamandan beri kötü amaçlı yazılım analizi topluluğunda yaygın olarak kullanılan bir araç haline gelmiştir. Geliştirilmesi açık kaynaklı olarak devam etmektedir.

3. Nasıl Çalışır? <a name="nasıl-çalışır"></a>

YARA, önceden tanımlanmış YARA kurallarını kullanarak bir dosya veya bir dizi dosya üzerinde tarama yapar. Her bir kural, bir veya daha fazla dize (metin veya ikili) ve bu dizelerin bir dosyada bulunması durumunda kuralın "eşleştiğini" belirten bir koşul içerir.

Süreç şu adımlardan oluşur:

  1. YARA Kuralları Oluşturma: Kullanıcı, belirli kötü amaçlı yazılımları veya dosya türlerini tanımlamak için kurallar oluşturur.
  2. YARA'yı Çalıştırma: YARA aracı, hedef dosyalar üzerinde oluşturulan kuralları kullanarak tarama yapar.
  3. Eşleşmeleri Raporlama: Eşleşen kuralları ve eşleşmelerin bulunduğu dosya konumlarını raporlar.

4. YARA Kuralları <a name="yara-kuralları"></a>

YARA kuralları, kötü amaçlı yazılımları veya diğer ilgilenilen dosyaları tanımlamak için kullanılır. Her kural, bir ad, meta veriler, dizeler ve bir koşul içerir.

Söz Dizimi <a name="söz-dizimi"></a>

Temel YARA kuralı söz dizimi şöyledir:

rule KuralAdi
{
    meta:
        // Meta veriler buraya
    strings:
        // Dizeler buraya
    condition:
        // Koşul buraya
}

Meta Veriler <a name="meta-veriler"></a>

Meta veriler, kural hakkında ek bilgiler sağlar. Örneğin, kuralın yazarı, açıklaması, oluşturulma tarihi vb.

meta:
    author = "John Doe"
    description = "Bu kural, belirli bir fidye yazılımını tespit etmek için kullanılır."
    date = "2023-10-27"

Dizeler <a name="dizeler"></a>

Dizeler, bir dosyada aranacak olan metin veya ikili dizileridir. Dizeler, farklı özelliklere sahip olabilir:

  • $dize_adı = "aranacak metin": Basit metin dizesi.
  • $dize_adı = { AA BB CC DD }: İkili dize (hexadecimal).
  • $dize_adı = /düzenli ifade/: Düzenli ifade.

Dize değiştiricileri şunları içerir:

  • nocase: Büyük/küçük harf duyarlılığını devre dışı bırakır.
  • ascii: Dizenin ASCII olarak kodlandığını belirtir.
  • wide: Dizenin Unicode olarak kodlandığını belirtir.
  • xor: Dizenin XOR ile şifrelendiğini belirtir (bir anahtar belirtilebilir).

Koşullar <a name="koşullar"></a>

Koşul, kuralın eşleşmesi için hangi dizelerin bulunması gerektiğini belirtir. Mantıksal operatörler (and, or, not) ve dize sayacıları (#dize_adı) kullanılabilir.

condition:
    $dize1 and $dize2 and #dize3 > 5

Bu koşul, $dize1 ve $dize2'nin bulunmasını ve $dize3'ün 5'ten fazla kez bulunmasını gerektirir.

5. Kullanım Alanları <a name="kullanım-alanları"></a>

YARA, çeşitli güvenlik alanlarında yaygın olarak kullanılmaktadır.

Kötü Amaçlı Yazılım Analizi <a name="kötü-amaçlı-yazılım-analizi"></a>

YARA, kötü amaçlı yazılım örneklerini tanımlamak, sınıflandırmak ve analiz etmek için temel bir araçtır. Kötü amaçlı yazılım ailelerini, varyantlarını ve yaygın özelliklerini tanımlamak için kullanılır.

Olay Müdahalesi <a name="olay-müdahalesi"></a>

Bir güvenlik ihlali durumunda, YARA, sistemleri taramak ve kötü amaçlı yazılım bulaşmış dosyaları tespit etmek için kullanılabilir.

Tehdit İstihbaratı <a name="tehdit-istihbaratı"></a>

YARA kuralları, tehdit istihbaratı verilerini kullanarak yeni ve gelişen tehditleri tanımlamak için kullanılabilir.

6. Araçlar ve Entegrasyonlar <a name="araçlar-ve-entegrasyonlar"></a>

YARA, çeşitli araçlar ve platformlarla entegre edilebilir:

  • Komut Satırı Aracı: YARA, komut satırından kullanılabilir.
  • Python Modülü: YARA, Python betiklerine entegre edilebilir.
  • SIEM (Security Information and Event Management) Sistemleri: YARA, SIEM sistemlerine entegre edilerek olay algılama yeteneklerini geliştirebilir.
  • Sandbox Ortamları: YARA, sandbox ortamlarında kötü amaçlı yazılım analizini otomatikleştirmek için kullanılabilir.

7. Avantajları ve Dezavantajları <a name="avantajları-ve-dezavantajları"></a>

Avantajları:

  • Esneklik: YARA, çok çeşitli dosya türlerini ve kalıplarını eşleştirebilir.
  • Hız: YARA, büyük dosya kümelerini hızlı bir şekilde tarayabilir.
  • Yaygın Kabul: Kötü amaçlı yazılım analizi topluluğunda yaygın olarak kullanılır.
  • Açık Kaynak: YARA açık kaynaklıdır ve ücretsiz olarak kullanılabilir.

Dezavantajları:

  • Yanlış Pozitifler: YARA kuralları, yanlış pozitiflere neden olabilir (zararsız dosyaları kötü amaçlı yazılım olarak işaretlemek).
  • Kural Yönetimi: Büyük bir kural kümesini yönetmek zor olabilir.
  • Karmaşıklık: Karmaşık YARA kuralları oluşturmak ve anlamak zor olabilir.

8. Örnek YARA Kuralı <a name="örnek-yara-kuralı"></a>

Bu örnek kural, "WannaCry" fidye yazılımının bazı karakteristik dizelerini tanımlar.

rule WannaCry
{
    meta:
        author = "John Doe"
        description = "WannaCry Ransomware Detection"
        date = "2023-10-27"
    strings:
        $s1 = "Please pay 0.1 Bitcoin to the following address:"
        $s2 = "WANNACRY!"
        $s3 = "This won't decrypt your files if you don't pay!"
    condition:
        all of them
}

9. Ayrıca Bakınız <a name="ayrıca-bakınız"></a>

10. Kaynakça <a name="kaynakça"></a>

  • YARA Official Website: (varsayımsal link)
  • YARA Documentation: (varsayımsal link)
  • Various articles and blog posts on YARA and its usage in malware analysis.
Kendi sorunu sor