25 lines
428 B
C
25 lines
428 B
C
|
#include <stdio.h>
|
||
|
#include <stdlib.h>
|
||
|
#include <string.h>
|
||
|
|
||
|
// vulnerable function
|
||
|
int overflow_me(char* input)
|
||
|
{
|
||
|
char buff[100];
|
||
|
printf("Buffer is at %p\n", &buff); // buff's address is leaked :O
|
||
|
strcpy(buff, input);
|
||
|
|
||
|
return 1;
|
||
|
}
|
||
|
|
||
|
int main(int argc, char *argv[])
|
||
|
{
|
||
|
if(argc < 2)
|
||
|
{
|
||
|
printf("Syntax: %s <input string>\n", argv[0]);
|
||
|
exit (0);
|
||
|
}
|
||
|
overflow_me(argv[1]);
|
||
|
return 0;
|
||
|
}
|