Frage:
Was sind die Unterschiede zwischen metamorpher, oligomorpher und polymorpher Malware?
perror
2013-04-10 13:34:50 UTC
view on stackexchange narkive permalink

Malware verwendet verschiedene Methoden, um Antivirensoftware zu umgehen. Eine besteht darin, ihren Code beim Replizieren zu ändern. Ich habe hauptsächlich drei Arten von Techniken in freier Wildbahn gesehen: metamorphe Malware , oligomorphe Malware und polymorphe Malware (möglicherweise habe ich eine verpasst). Was sind die Hauptunterschiede zwischen diesen Techniken und was machen sie?

http://security.stackexchange.com/questions/4619/oligomorphism-vs-polymorphism-vs-metamorphism-in-malware
Sind Sie sicher, dass wir es nicht besser machen können als diese (kurze) Antwort?
Trotzdem ist mir der Unterschied zwischen metamorph und polymorph unklar ... Wenn jemand eine bessere Definition haben kann, nehme ich sie an.
Zwei antworten:
peter ferrie
2013-04-10 23:08:08 UTC
view on stackexchange narkive permalink

In der Reihenfolge zunehmender Komplexität: oligomorph, polymorph, metamorph.

Die ersten beiden Begriffe werden im Allgemeinen auf Entschlüsseler angewendet. Wir (Antiviren-Industrie) definieren sie folgendermaßen: oligomorph - Entschlüsseler mit wenigen variablen Elementen, der die Größe oder Form des Codes nicht beeinflusst. Dies bedeutet, dass die variablen Elemente normalerweise Anweisungen mit fester Größe sind, sie können jedoch auch für die Registerinitialisierung gelten.

Oligomorphes Beispiel

  std; fake, wird möglicherweise durch ersetzt cld / nop / xchg axe, cx / ... mov cx, sizemov axe, axe; fake, könnte durch mov bx, bx / oder cx, cx / ... mov si, decrypt_srccld; fakemov di, decrypt_dstor axe, ersetzt werden. axe; fakemov bl, keyand bp, bp; fakedecrypt: xor [di], blxchg dx, axe; fakeinc dicld; fakeloop decrypt  

In diesem Fall der di code Das Register> könnte beispielsweise mit si ausgetauscht werden. Sehr einfache Ersetzung.

Polymorpher

Entschlüsseler mit möglicherweise sehr variablen Elementen, was sich auf die Größe und / oder Form des Codes auswirkt. Dies bedeutet, dass alle Arten von Änderungen angewendet werden können, einschließlich der Erstellung von Unterprogrammen, großer Blöcke von Müllanweisungen, Code "Inseln" oder sogar der Initialisierung von algorithmischen Registern (Beispiel hier).

Metamorphe

hochvariable Elemente werden direkt auf den Körper angewendet. In diesem Fall gibt es im Allgemeinen keinen Entschlüsseler. Die gleichen Techniken für den Polymorphismus werden auf den Code selbst angewendet. Das bekannteste Beispiel hierfür ist das Simile-Virus aus dem Jahr 2002 (Details hier). Es gibt ein ausführliches Papier zu diesem Thema mit aktuellen Beispielen hier)

Ange
2013-04-10 14:03:54 UTC
view on stackexchange narkive permalink
  • polymorpher Code (der Oberbegriff) unterschiedlicher (unterschiedlicher Verschlüsselungsschlüssel) Code, aber gleiches Ergebnis
  • oligomorpher Code: musterbasierter Polymorphismus

    2 verschiedene Ausführungen eines oligomorphen Codes:

      MOV ECX, FC07379C PUSH 40XOR ECX, FC0737DC PUSH TadaPUSH ECX NOPNOP PUSH HelloworldPUSH Tada PUSH 0NOP NOPMOV ECX, F8477840 CALL MessageBoxAXOR ECX, F80779BC MOV ECX, 0A2EF248PUSH ECX XOR ECX, 0A2EF248NOP PUSH ECXPUSH 0 CALL + >  metamorpher Code: Polymorphismus mit Auto-Mutation - das Ergebnis ist etwas anders 


Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...