Why I do get “Cannot find bound of current function” when I overwrite the ret address of a vulnerable program?

The debugger has knowledge about where the code for functions in your program begin and end, either because this information is provided in debugging data or because it uses any external symbols visible in the executable to provide rudimentary information. When the stack is in a proper state, it contains a return address to the … Read more