PDFTT cr3w a.E. — ReiDC0Re, lindor, Sera, berry
please do feed the trolls crew and elk
Ehrenwerte Mitglieder im Ruhestand: OpCodez, SFX.
"Was sich blackberry gerade denkt" — Vorsicht! Frei laufender Wahnsinn!
Zitat von fuckinghot19: "PS: Blackberry ist auf FH der Trollkönig ^^."
An dieser Stelle danke ich all meinen Fans und Hatern gleichermaßen ^.^
Seh ich nicht so, da du ja im Programm die Variablen veränderst aber der sinn gleich bleibt( das wäre einem AV egal und würde sofort detected werden) aber damit ist ein programm gemeint, der ein vorhandener code anderst wieder in eine exe schreibt.
wie bei Trashcode werden einfach Nop´s dazwischengecloppt oder iwas, was nichtsagend ist.
mfg
aber wenn man das ganz locker sieht es ist polymorph ^^
Perl ist Sexy xD
Ich finde einfach, dass Perl eine schöne Sprache ist mit der man viel realisieren kann, wenn ich nen virii in c code verschicke ich ihn auch nicht, da mir einfach nur das coden daran gefällt und die Herausforderung.
Ich habe in Perl gepostet weil ich nicht wusste wo ich es hinposten soll, da ich keinen Breich für allgemeine Fragen gefunden habe.
Gibt es hier Syntaxhighlighting für Sprachen ?
Ja bei NoPasteGibt es hier Syntaxhighlighting für Sprachen ?
und blackberry auch mit Perl kann man funktionstüchtige exe files erstellen aber sonst wird Perl zu Polymorphismuss eher nicht benutzt
mfg
Es werden keine Variablen verändert - es werden nur Kommentare mit Pseudozufallszahlen zwischen den Zeilen eingefügt.
Der Code verändert sich trotzdem (es ist klar, dass das Einfügen von Kommentaren bei einer compilativen Sprache und das anschließende neucompilieren das ganze nicht polymorph machen ist klar, aber bei einer Skriptsprache kann das so funktionieren)
Wenn du aber polymorphismus als eine Veränderung des Sinnes des Programms betrachtest, dann würde ich gerne mal wissen was deine Polymorphen Viren so machen;
Beim ersten Ausführen verbreiten sie sich auf deinem PC und in deinem Netzwerk, wo sie wiederum Hintertüren installieren und beim nächsten Hochfahren säubern sie dein Netzwerk wieder, räumen dir deinen Desktop auf und helfen dir bei deinen täglichen Computerproblemen. (das wäre für mich ein Wechsel des Sinnes eines Programms wie du ihn beschrieben hast).
mfG. BlackBerry
EDIT:
Soweit ich weiß funktioniert das wie bei Bamcompile ( http://www.bambalam.se/bamcompile/ ) - das Skript wird per Binder an eine Miniversion des Perl-Interpreters gebunden.
Beim Ausführen werden dann Interpreter und Script gedroppt und aufgerufen.
Der oben gepostete polymorphe Code würde somit nur seine gedroppte Version verändern, die erstellte EXE würde sich aber nicht verändern.
Somit bringt es nichts diesen Code zu einer EXE zu compilieren (oder besser gesagt zu binden)
Geändert von blackberry (23.02.2009 um 22:11 Uhr)
PDFTT cr3w a.E. — ReiDC0Re, lindor, Sera, berry
please do feed the trolls crew and elk
Ehrenwerte Mitglieder im Ruhestand: OpCodez, SFX.
"Was sich blackberry gerade denkt" — Vorsicht! Frei laufender Wahnsinn!
Zitat von fuckinghot19: "PS: Blackberry ist auf FH der Trollkönig ^^."
An dieser Stelle danke ich all meinen Fans und Hatern gleichermaßen ^.^
ich meinte nicht den sinn des programms sondern die veränderung der Signatur sowie des Quelltextes im sinne vom ablauf her... aber einer der mein Desktop säubert hätt ik gerne
mfg
Der Quelltext wurde verändert.
Außerdem glaubst du doch wohl nicht im Ernst, dass Antivirensoftwarefirmen wie Kaspersky und Co. eine Art Perl-Interpreter schreiben, nur um herauszufinden was ein Skript macht um es dann einordnen zu können.
Es wird mit bereits bekanntem Material verglichen bzw. nach verdächtigem Material gesucht.
Um aber solches verdächtiges Material zu identifizieren kann man nicht einfach sagen die Malware XYZ hat folgenden Code in sich:
mov eax, 1234
-> das haben viele, weniger haben jedoch:
mov eax, 1234
xor ebx, ebx
add ebx, 1
-> sagen wir also Signatur wird erkannt
mov eax, 1234
push eax
pop eax
xor ebx, ebx
add ebx, 1
-> unbekannt
Der Ablauf bleibt der gleiche; eax 1234 zuweisen, ebx auf 0 setzen und 1 zu ebx addieren (sprich ebx auf 1 setzen).
Das selbe hatten wir ja bei dem polymorphen Code, den du eher nicht als polymorph bezeichnet hast;
open(Virii,"<","$0");
@Virii = <Virii>;
-> das ist die Signatur
open(Virii,"<","$0");
#12
#173
@Virii = <Virii>;
#107
#3
-> nach 1x Ausführen; die Signatur kann nicht mehr erkannt werden, obwohl der Ablauf gleich geblieben ist
mfG. BlackBerry
PDFTT cr3w a.E. — ReiDC0Re, lindor, Sera, berry
please do feed the trolls crew and elk
Ehrenwerte Mitglieder im Ruhestand: OpCodez, SFX.
"Was sich blackberry gerade denkt" — Vorsicht! Frei laufender Wahnsinn!
Zitat von fuckinghot19: "PS: Blackberry ist auf FH der Trollkönig ^^."
An dieser Stelle danke ich all meinen Fans und Hatern gleichermaßen ^.^
find ich hart, wenn du denkst man kann mit Perl keine exe dateien schreiben.. ergo kein Interpreter nötig.Außerdem glaubst du doch wohl nicht im Ernst, dass Antivirensoftwarefirmen wie Kaspersky und Co. eine Art Perl-Interpreter schreiben, nur um herauszufinden was ein Skript macht um es dann einordnen zu können.
und ne Perl exe mit Trashcode hat genauso mov eax, 1234 oder ähnliches.
mfg
Mit Perl kann man keine exe-Dateien erstellen. Die exe-Dateien sind, wie BlackBerry schon gesagt hat, nur "pseudo". Es sind Miniinterpreter an die das Perlscript "gebunden" wurde. Ob man damit "polymorpen" Code schreiben kann kommt darauf an wie der "Miniinterpreter" arbeitet. Bei entpacken-ausführen-löschen nicht, bei entpacken-ausführen-wieder_einpacken schon.
Würden eure asm-Beispiele so funktionieren? So würden doch die ganzen Adressen innerhalb des Programms falsch werden!? Außer diese werden auch alle bearbeitet.
Oder liege ich da falsch?
Bei Binaries nennt man das Heurestik. Könnte mir durchaus auch vorstellen dass man das auch für "bekannte" Scriptsprachen macht. (Afaik schlagen manche Antivirenprogramme doch auch bei bösen Batchscripten zu!?)Außerdem glaubst du doch wohl nicht im Ernst, dass Antivirensoftwarefirmen wie Kaspersky und Co. eine Art Perl-Interpreter schreiben, nur um herauszufinden was ein Skript macht um es dann einordnen zu können.
~noctem
noctem{aet}jabber.ccc.de
Wie ist das bei antivirenprogrammen, lesen die ein script Stück für Stück ein, oder führen sie es aus und schauen dann, was passiert? Wenn sie ersteres machen könnte man das ganze Script dann nicht einfach verschlüsseln und beim Ausführen entschlüsseln?