Buffer Overflow
-
Hi ich habe ein Problem mit diesem Code:
#include <stdio.h> #include <string.h> int main() { char *str1 = "0123456789012"; char buf1[10]; strcpy(buf1,str1); printf("Buffer Overflow: %s\n",buf1); char *str2 = "0123456789012/bin/bash"; char buf2[10]; strcpy(buf2, str2); printf("Buffer Overflow mit Bash: %s",buf2); return 0; int i; }
Das Programm lässt sich Compilieren blos, wenn ic hes Öffne dann schließt es sich einfach wieder
HELP
-
Eine Lektüre zur Arbeitsweise von strcpy sollte deine Frage beantworten.
-
Morgen
Killer,
das Beenden hat nix mit einem BufferOverflow zu tun. Dein Programm ist lediglich zu Ende siehe return. Mach vor dem return einfach ein getchar().
-
Aber dann kommt ein Sytax-ERROR
C:\Dev-Cpp\Unbenannt1.c In function `main':
15 C:\Dev-Cpp\Unbenannt1.c syntax error before "return" C:\Dev-Cpp\Makefile.win [Build Error] [Unbenannt1.o] Error 1WAs nun?
-