This course will focus on remote computer penetration (hacking). The class will introduce basic theory for many different types of attacks; then we will actually carry them out in 'real-world' settings. The goal is to learn security by learning how to view your machine from a hacker's perspective. In addition, we encourage students to participate in the UCSB International Capture the Flag Competition. Capture the Flag is a network security exercise where the goal is to exploit other machines while defending your own. In fact, this course should prepare you for any one of many capture the flag competitions that take place year round.

We will learn about different types of hacks and perform them. After learning how to execute such exploits and penetrate a network, we will discuss ways to protect a network from others exploiting the same vulnerabilities. Understanding security is essential in all fields of software development and computing.

For major or minors in Computer Science, this course can satisfy the 1) systems breadth, 2) systems depth and 3) security depth areas. If you have any questions, please contact one of the instructors below.



Location and Time

Location: Wilkinson Lab
Time: Fri 10am - 12:50pm

Office Hours

On-site hours in Wilkinson Lab:


For the labs, please remember to check out with one of the teaching staff at the end of each lab. If you cannot finish it in class, you are expected to finish it within a week. After that, there is a late penalty of 10% off per day.

We would like to foster a community for students in this class to help each other with projects (without giving solutions, of course).


This class website can be found at http://hamsa.cs.northwestern.edu. The website will be used to host files presented and used in class. In addition, we will use a Google Group, Network Penetration and Security, for communication and discussion. Please join this group as soon as possible. The group can be found at http://groups.google.com/group/nuctf.