168k views
2 votes
The following program takes a password as input but always refuses to generate lottery numbers: lottery.cpp Download lottery.cpp Luckily, the program is vulnerable to a buffer overrun in the goodPassword() procedure. The goal is to take advantage of the vulnerability so that it can generate lucky numbers for us. a) Draw a diagram showing how the stack is arranged when this program runs. 10 pts b) Figure out a password that can make the program output a lucky number. Hint: no need to overwrite the return address; there is an easier target to overwrite in this program. Explain how your password works. 5 pts c) Rewrite the program so that it no longer has a buffer vulnerability. Choose a submission type

1 Answer

1 vote
Is computer working now
User Dinre
by
7.8k points