In dieser mehrteiligen Serie möchten wir Ihnen Techniken vorstellen, die das Leben eines Malwareanalysten erschweren, sprich abwechslungsreich und spannend machen. Im ersten Teil behandeln wir Anti-Disassembly und führen in die Thematik ein.
Warum macht ein Computer eigentlich, was er macht? Und was hat das mit dem Thema dieser Reihe zu tun? Zwei zentrale Fragen, welche im Folgenden beantwortet werden.
Entwickler erstellen Computerprogramme meist in einer Sprache, die intuitiv verständlich ist. Man bezeichnet das Ergebnis dieser Schreibbemühungen als Quellcode.
10 REM Hello World in BASIC 20 PRINT "Hello World!"
Viel kann der Computer (oder genauer gesagt die CPU) damit nicht anfangen. Der Quellcode muss in eine Sprache übersetzt werden, welche die CPU versteht – in eine Abfolge von Maschinenbefehlen.
6A 40 68 00 30 40 00 68 17 30 40 00 6A 00 E8 07 00 00 00 [...] 48 65 6C 6C 6F 20 57 6F 72 6C 64 21 00
Diese Maschinenbefehle sind eher schwierig zu lesen, aber üblicherweise ist dies das einzige, was den Malwareanalysten zur Verfügung steht. Continue reading “Einführung in die Anti-Malware-Analyse – Teil 1: Anti-Disassembly”