For this exploit tutorial we gonna use the Stack5 challenge from exploit-exercises. Okay, we save the file and compile it and we get this message: Even gcc informs us we use a vulnerable function! Damn! That means this attack is not going to be that easy for real life targets as long as the compiler informs the developers they have used an exploitable function. Note that we have every protection(ASLR, NX etc) disabled on this machine so the real life exploitation won't be that simple for sure. Let's start by debugging the program with skid's favourite debugger Exactly, GDB! Type ` gdb ./stack5 ` and disassemble the main function to take a look at what this program does. At this point we can see by ourselves the program is calling the gets function. Nice, let's try to overwrite the return address to take control of the program flow. The program tried to return at 0x41414141 that of course is not a valid address. That means we ov...