Nicht Shellcode ausführen --> (Speicherzugriffsfehler (Speicherabzug geschrieben))

habe ich diese Funktion:

char code[] = "\xeb\x19\x31\xc0\x31\xdb\x31\xd2\x31\xc9\xb0\x04\xb3\x01\x59\xb2\x05\xcd\x80\x31\xc0\xb0\x01\x31\xdb\xcd\x80\xe8\xe2\xff\xff\xff\x68\x65\x6c\x6c\x6f";

int main(int argc, char **argv)
{
  int (*func)();
  func = (int (*)()) code;
  (int)(*func)();
}

(dieser code ist aus: shellcode-tutorial)

also ich kompiliert und ausgeführt, aber erhalte ich nur diese Meldung: Speicherzugriffsfehler (Speicherabzug geschrieben).

Warum ich nicht bekommen Sie etwas zurück, nur diese Fehlermeldung?

p.s.: mein system ist ein ubuntu x86-pc. der shellcode sollte mit ihm zu arbeiten. ich habe es kompiliert mit gcc und gcc-4.5, beide gleiche Fehler...

  • Laut Google Übersetzen, dass die Meldung besagt, dass ein Kern abgelagert wurde. Wenn Sie es finden können, können Sie verwenden Sie GDB, um zu sehen, was falsch gelaufen ist. (gdb yourprogram some.core)
  • Sind Sie ein Deutsches system? Es wäre unerwartet, zu bekommen, ein deutscher Fehler sonst, aber vermutlich sollten Sie es verstanden haben... wie auch immer, das scheint zu sein, nicht eine echte Frage.
  • Haben Sie die FAQs Lesen #7 und #10 aus der tutorial-Startseite, und machte sicher, dass Sie nicht die Ursache Ihres Problems.
InformationsquelleAutor user2100471 | 2013-11-03
Schreibe einen Kommentar