Note: WSL doesn't work for this lab. Use a VM or a lab machine.

[25pts] Part 1: Identifying a Vulnerability of a Bad Server

Your Task

Tips

Submit

[35pts] Part 2: Attacking the Bad Server

Your Task

Tip: Checking the assembly instructions of the injected code.

GDB is not overly kind to show the assembly instructions of the injected code. However, it provides a command that allows us to do so. Whenever you want to check the current assembly instruction, you can run the following command:

x/i $rip

Submit

[25pts] Part 3: Creating a Video

Create a video that walks through your attack step by step. I am mainly concerned about whether you fully understand the stack smashing attack.

Your video should:

Submit

In the lab report, give the link to your video.

[15pts] Part 4: Defense Techniques

Your task

We used the following options and command to remove the underlying defense mechanisms against the buffer overflow attacks. Discuss each of the mechanisms in light of the following:
Feel free to google for any relevant materials (and cite them).

Submit

Include the discussion in the lab report. (5 points for each option/command).

Submission Checklist

Write a lab report by using the provided template (check the lab ground rules). The writing quality of the lab report matters.
~/bin/submit -c=IT432 -p=lab05 expolit.py lab05_report.doc