|
Syracuse University |
|
|
Race-Condition Vulnerability Lab
OverviewThe learning objective of this lab is for students to gain the first-hand experience on the race-condition vulnerability by putting what they have learned about the vulnerability from class into actions. A race condition occurs when multiple processes access and manipulate the same data concurrently, and the outcome of the execution depends on the particular order in which the access takes place. If a privileged program has a race-condition vulnerability, attackers can run a parallel process to ``race'' against the privileged program, with an intention to change the behaviors of the program.In this lab, students will be given a program with a race-condition vulnerability; their task is to develop a scheme to exploit the vulnerability and gain the root privilege. In addition to the attacks, students will be guided to walk through several protection schemes that can be used to counter the race-condition attacks. Students need to evaluate whether the schemes work or not and explain why. Lab Description and Tasks (PDF)
Recommended Time:
Files that are Needed
SurveyThe following survey is designed to help us understand how effectively this lab has enhanced students' learning in computer security. The survey is anonymous, and is usually conducted after students finish the lab.
| |