2009-10-22 7 views
5

Ich möchte eine grundlegende Antivirus für meine Freizeit machen. Grundsätzlich habe ich über die grundlegende Struktur der EXE (Windows) -Datei gelernt. Wie extrahiere ich den ASM-Code aus der Datei und dem PE-Header?Decompiling EXE zu ASM

+0

Warum denkst du, du brauchst Disassembler in Antivirenprogrammen? – zxcat

+0

Wie kann ich den Virusteil erkennen? @zxcat wie würdest du es machen? –

Antwort

5

Sie können Cygwin installieren und objdump verwenden, um eine exe in asm zu dekompilieren. Stellen Sie sicher, dass Sie beim Installieren von Cygwin die Binutils ausgewählt haben. Nach Cygwin installieren, können Sie die folgenden von einer Bash-Shell laufen:

objdump -Slx yourpgm.exe 
+2

Ja, oder Linux auf der virtuellen Maschine ausführen und dort objdump verwenden. Klingt wie ein schwarzer Humor;) – zxcat

1

Sie disassembler.for Beispiel einige freie distrubuted verwenden können: ollydbg diassembler.

Hinweis: Es gibt nur einige ausführbare MS-DOS-Stub-Code im PE-Header.

+0

"Es gibt nur einige MS-DOS Stub ausführbaren Code in der PE-Header." Und wenn nicht? Sie wissen nie, wo sich der Virus verstecken wird, und die Header werden ebenfalls in den Speicher geladen, richtig? –

+0

Ich weiß tatsächlich, dass Virus Code in den Pe-Header injizieren könnte ... – Jichao