mov eax, große fs: 30h

8

Ich habe einige x86-Binärdateien analysiert und die folgende Anweisung gefunden, die ich nicht verstehen kann. Kann mir bitte jemand die folgenden Anweisungen erklären?

%Vor%

Ich habe das gegoogelt, und es stellt sich heraus, dass es ein Anti-Debugging-Kram ist ... aber das ist alles, was ich weiß.

Was bedeutet large ?? Und was bedeutet fs:30 ?

Ich kenne die Segmentierung, aber ich weiß nicht, wann das fs -Register verwendet wird. Beispielsweise wird cs: , ds: implizit übersprungen, wenn der Befehl auf Code oder Daten verweist. Aber was ist fs und was ist gs ?

    
daehee 24.01.2013, 08:19
quelle

1 Antwort

10

Sieht so aus, als wäre es Windows-Code, der die Adresse des Process Environment Blocks (PEB) über den Thread-Informationsblock lädt, auf den über das FS-Segment zugegriffen werden kann.

Das PEB enthält, am meisten andere Dinge, ein Flag, das anzeigt, ob der Prozess debuggt wird.

MSDN hat eine Seite darüber hier

    
JasonD 24.01.2013, 10:14
quelle

Tags und Links