Advanced Buffer Overflow #2

execution flow

Did you get the previous abo? Is the key to it overwriting sensible data or something else? Again, it is important to know who will read the data, and how will it be interpreted.


/* abo2.c                                       *
 * specially crafted to feed your brain by gera */

/* This is a tricky example to make you think   *
 * and give you some help on the next one       */

int main(int argv,char **argc) {
	char buf[256];

	strcpy(buf,argc[1]);
	exit(1);
}

In this new abo, as you can see, we added an exit(). Go and find out what's the difference, what new possibilities this exit() adds, or what constrains it puts on the exploitation of the buffer overflow... good luck, take your time, and keep thinking until you are absolutly sure of what you think...

{Previous} {index} {Next}