Polimorphic Zararlı Yazılım Mekanizmaları
Polimorphic Zararlı Yazılım Mekanizmaları

[TR] Polymorphic Zararlı Yazılım Mekanizmaları

[TR] Polymorphic Zararlı Yazılım Mekanizmaları

Zararlı yazılımlar dünya genelinde bilgisayar sistemleri için en önemli güvenlik tehditlerden birisidir. Hasara neden olan istenmeyen/yetkisiz işlevleri yerine getirme potansiyeline sahip kod içerirler. Zararlı yazılımlar geliştikçe bilgisayar sistemlerine bulaşmanın, sistemleri expolit etmenin farklı yollarını ararlar. Kötü amaçlı yazılım geliştiriciler analizi engellemek için karmaşık kodların kullanımına odaklanmıştır.

Analizi zorlaştırma, engelleme yöntemlerinden birisi de Polymorphic malware tekniğidir.

Polymorphic Malware Nedir?

Bir polymorphic malware, çoğaldığında kendini mutasyona uğratabilen ve orijinal antivirüs yazılımı ile tanımlanmasını zorlaştıran bir bilgisayar virüsüdür. Polymorphic malware birçok biçimde bulunur; virüs, bots, trojan, worm ve keylogger olarak gözlenebilir. Türü ne olursa olsun, bu zararlı yazılımı bu kadar etkili kılan şey karmaşıklığı ve hızıdır.

Polymorpic Malware Değişim
Polymorpic Malware Değişim

Polymorphic malware, her 15–20 saniyede bir hızlı değişim için polimorfik kod kullanır.

Normal Bir Virus;

Birçok antivirüs programı kötü amaçlı yazılımı tespit etmek ve engellemek için geleneksel imza tabanlı algılama yöntemlerini kullanır.

Polymorphic Virus;

Polymorphic malware her 15–20 saniyede bir değiştiği için her yinelemede yeni bir imza oluşacaktır. Yeni imzayı tanımladıkları zaman, polymorphic malware zaten yeni bir şeye dönüşür. Sonuç olarak, çoğu antivirüs bu tehditleri tespit edemez.

Polymorphic Teknikleri:

Mevcut polimorfizm teknikleri genellikle kodu gizlemenin iki yolunu kullanır;

  1. Kodu her seferinde yeniden yazar, böylece sözdizimsel olarak farklılık gösterir, ancak aynı işlevselliğini korur.
  2. Kendi kendini şifrelemektir, şifrelerin sırasının random hale getirilmesi ve farklı anahtarların kullanılmasıyla elde edilir.

A. Polymorphic Engine (Polimorfik Motor):

Polymorphic Engine (Polimorfik motor) bir programı farklı anahtarlarla şifreleyerek ve büyük ölçüde değişebilen bir şifre çözme modülü sağlayarak, aynı işlevselliğe sahip farklı kodlardan oluşan bir sürüme dönüştürebilen bir bilgisayar programıdır.

Mutasyon için, zararlı yazılımın orijinal algoritmasını sağlam tutan polimorfik bir motor kullanılır. Bu, kodun her çalıştırıldığında değişmeye devam ettiği, ancak kodun işlevinin değişmeden kalacağı anlamına gelir.

B. Polymorphic Encryptors (Polimorfik Şifreleyiciler):

Basit şifreleme: “XOR”, “ADD”, A B olur, B C olur, C D olur. Transpozisyon şifrelemesi ( kaydırmalı şifreleme)

Gelişmiş şifreleme: XYZ, X A ile şifrelenir, Y B ile şifrelenir, Z C ile şifrelenir.

Şifreleme için uzun key (Key tahmini zor): WVYYX, key ABCD’dir, önce W’yi A ile, V’yi B ile şifrele Y ile C, sonraki Y ile A, X ile B.

Mutasyon şifreleme, çoklu şifreleme yöntemidir. Kod aynı veya farklı bir anahtarla tekrar şifrelenir. Transpozisyon şifrelemesi kesinlikle zayıftır çünkü rastgele key orijinal işlem kodunu oluşturabilir.

C. Polymorphic Decryptors ( Polimorfik Şifre Çözücüler ):

Tüm şifreleme algoritmaları aynı değildir. Örneğin Bazıları kısa bir anahtarla bir XOR gibi davranır ve şifresini çözmek kolaydır.

İyi test edilmiş bir başka algoritma, anahtarı almanın bir yolu olmayan rastgele şifre çözme algoritmasıdır ( Random Decryption Algorithm- RDA).

Zayıf kripto:
  • Rastgele olmayan RDA: hesaplama süresi her zaman aynıdır (W32 / crypto)
  • Rastgele RDA: hesaplama süresi tahmin edilemez (W32/İHSix)
Güçlü Kripto:

Bir şifre çözme işlevi D, anahtarı hesaplamak ve ilgili kodu çözmek için gereken bilgileri toplar.

  • Şifreli kod EVP1 (key k1) tüm antiviral mekanizmaları içerir.
  • Şifreli kod EVP2 (key K2) enfeksiyon ve polimorfizm mekanizmasından sorumludur.
  • Şifreli kod EVP3 (key K3) tüm isteğe bağlı payloadları içerir.

Pseudo-random generation algorithm (PRGA), Sözde rastgele üretim algoritması koda sözde rastgele bir eleman gönderilir ve kısa süre sonra dizisine diğer iki elemanının eklenmesiyle değiştirilir.

Polymorphic nasıl oluşturulur?

Farklı anahtarlarla aynı virüs gövdesinin sürekli olarak yeni rastgele şifrelemesi ile oluşturulur.

Win32 Vundo Polymorphic Virus:

Entry Point Obfuscation (EPO)

W32 / Vundo virüsünde koşullu jmp’lar kullanarak yürütme akışını tersine çevirirken bir programın yapısını talimat veya modül düzeyinde fiziksel olarak yeniden kodlayarak değiştirildiği görülüyor.

Polymorphic Malware Örneği:

2007’de Storm Worm olarak bilinen bir spam e-postası, “230 dead as storm batters Europe “ konusunu içeren bir e-posta ile gönderildi. Bir kullanıcı e-postayı açtığında, zararlı yazılım, cihazı bir bota dönüştürüp trojan dağıttı ve çalıştırdı. Bu zararlı yazılımın algılanmasını özellikle zorlaştıran şey, her 10 ila 30 dakikada bir kendini değiştirmesiydi.