Description
This course focuses on basic concepts in network security. It aims to introduce students to the fundamental techniques used in implementing secure network communications, and to give them an understanding of common threats and attacks, as well as some practical experience in attacking and defending networked systems. This is not a course in cryptography, nor a comprehensive course in systems security.Syllabus
- Basics of cryptography: cryptographic hash functions, symmetric and public-key encryption
- Authentication and key establishment
- Buffer overflow attacks
- Web security
- Internet worms, viruses, spyware
- Spam, phishing, botnets, denial of service
- TCP/IP and DNS security
- Firewalls and intrusion detection systems
- Wireless security
Prerequisites
- CS 310/336 is required.
- CS 375 (Compilers), CS 356 (Computer Networks), CS 346 (Cryptography) and CS 361 (Intro to Computer Security) are recommended, but not required.
- Projects will involve implementing attack code to exploit buffer overflows in C programs and injection vulnerabilities in Web applications. Working knowledge of C and JavaScript is strongly recommended.
Textbook
Network Security (2nd edition) by Kaufman, Perlman, and Speciner. ISBN 0130460192.Grading
- Homeworks: 30%
- Projects: 25%
- Midterm: 20%
- Final: 25%
Late submission policy
Each assignment is due at the beginning of class on the due date. All late submissions will be subject to the following policy.You start the semester with a credit of 3 late days. For the purpose of counting late days, a "day" is 24 hours starting at 11am on the assignment's due date. Partial days are rounded up to the next full day. You are free to divide your late days among the take-home assignments (3 homeworks and 2 projects) any way you want: submit three assignments 1 day late, submit one assignment 3 days late, etc. After your 3 days are used up, no late submissions will be accepted and you will automatically receive 0 points for each late assignment.
You may submit late assignments to Vitaly Shmatikov or Oliver Jensen. When submitting a late assignment, please indicate how many late days you are using.