shellcode und die null bytes

09/12/2009 - 22:28 von Jens Kallup | Report spam
Hallo,

wenn man ShellCode programmiert ... wie kann ich
sicherstellen, das jumps vom type short sind.
also wenn ich nun GNU C .a Archiv habe, das DLL
import Funktionen beinhaltet - da wird doch
bestimmt mit 8 byte gehandelt?

gruß
jens
 

Lesen sie die antworten

#1 Jan Seiffert
09/12/2009 - 23:55 | Warnen spam
Jens Kallup schrieb:
Hallo,

wenn man ShellCode programmiert ... wie kann ich
sicherstellen, das jumps vom type short sind.
also wenn ich nun GNU C .a Archiv habe, das DLL
import Funktionen beinhaltet - da wird doch
bestimmt mit 8 byte gehandelt?




Hmmm, also Jens, heut abend sind deine Fragen etwas schlecht verstaendlich.
Noch mal inne Tuete sprechen, neu sortieren, drueber nachdenken, und dann...

Darum bekommst du jetzt ne Ladung Schrot-Antwort:

1) Wenn man Shellcode Programmiert, ueberlegt man sich was, das da keine \0
Bytes drin sind.
2) in dem du sie wenns ganz hart kommst, von Hand codest oder eben das -O am
Assembler benutzt.
3) Es ist egal obs aus einem .a .o oder sonstwo herkommt, ja, wer dynamisch
funcs aufruft, muss damit leben dass das "grosse" Addressen braucht
4) was hat jetzt ein short _jmp_ displacement mit nem _call_ einer (DLL) func zu
tun?
5) Und wer sagt was von 8 byte? x86-64?
6) Das nennt man relocation, da wirst du nicht drum rum kommen

ausser siehe 1)

gruß
jens


Gruss
Jan

Frauen gehen. Die Hilti bleibt.

Ähnliche fragen