buffer overrin

mmuse

New member
buffer overrin

העתקתי דוגמא שאמורה להמחיש את זה, אבל אני לא רואה שום בעיה. למה? הנה הדוגמא שאני מנסה להריץ:
#include <stdio.h> #include <string.h> void foo(const char* input) { char buf[10]; printf ("My stack looks like:\n%p\n%p\n%p\n%p\n%p\n%p\n\n"); strcpy(buf, input); printf("%s\n", buf); printf ("Now the stack look like:\n%p\n%p\n%p\n%p\n%p\n%p\n\n"); } void bar () { printf ("Augh! I've been acked!\n"); } int main(int argc, char* argv[]) { printf("Address of foo = %p\n", foo); printf("Address of bar = %p\n", bar); if (argc != 2) { return -1; } foo(argv[1]); getchar(); return 0; }​
 
למעלה