CS6501/ECE6502: Network Security and Privacy, Spring 2023

Course Description

This course investigates security and privacy issues that stem from the Internet infrastructure. We will cover topics such as BGP security, DNS security, DDoS attacks, and anonymous communications. We will also look at various mechanisms to secure the Internet infrastructure as well as privacy enhancing technologies. Note that this course will involve literature review and paper presentation/discussion.

Prerequisites

No formal prerequisites, but assumes basic familiarity with programming in languages like C and Python. Some background in computer networks (e.g., equivalence of CS4457) will be helpful.

Course Schedule

Dates Topic Paper Notes
Thu 1/19 Intro/Network Architecture - Classes start
Tue 1/24 HTTP and TLS -
Thu 1/26 TCP/UDP -
Tue 1/31 Addressing and Naming -
Thu 2/2 Control plane (routing) -
Tue 2/7 Data plane (forwarding) -
Thu 2/9 Internet scanning IPv6 scanning Paper reading starts
Tue 2/14 Routing attack BGP data center
Thu 2/16 Routing defense Path-end validation HW1 due on Friday 2/17
Tue 2/21 DDoS/Botnet Mirai
Thu 2/23 TCP attacks Attack discovery
Tue 2/28 DNS attacks Cache poisoning
Thu 3/2 DNS defense DNSSEC HW2 due on Friday 3/3
Tue 3/7 (Spring break) -
Thu 3/9 (Spring break) -
Tue 3/14 Certificates Let's Encrypt
Thu 3/16 Malware/APT IoT malware Project team/proposal due on Saturday
Tue 3/21 Anomaly detection Bro
Thu 3/23 Secure programmable dataplane Poseidon
Tue 3/28 Anonymity systems Safely measure Tor
Thu 3/30 Fingerprinting k-fingerprinting
Tue 4/4 Censroship measurement ICLab
Thu 4/6 Censorship circumvention TLS circumvention
Tue 4/11 Online tracking Online tracking
Thu 4/13 Future Internet SCION Paper reading ends
Tue 4/18 Project presentation
Thu 4/20 Project presentation
Tue 4/25 Project presentation
Thu 4/27 Project presentation
Tue 5/2 Project presentation

Grading

Late Policy

All assignments/reviews are due via Collab at 11:59pm on the due date.

Communication and Logistics

There is no textbook for the course that you need to purchase. We will distribute materials as needed.

There are several sites, all can be found/linked from Collab:

Please direct all course-related questions to Piazza (or go to office hours). If you want to discuss other topics or have personal/team issues that can and should only be handled by a professor, please email me directly (ys3kz).

Academic Integrity

No plagiarism

You must cite any and every source you consult, other than those explicitly provided by the course itself. This includes talking with a friend/classmate or looking at a website/book. If you're unsure, please ask us. We run all submissions through a plagiarism checker by default.

Write your own code and DO NOT share your code

All assignments are individual work and there is no collaboration allowed. That means you should not push it to GitHub (or any other site), send a copy to anyone, turn your screen to your neighbor, code up solutions together, etc. It is ok to discuss with classmates, but please include the names of students whom you've discussed with.

No discussion allowed on paper reviews

While discussion is allowed for assignments, it is NOT allowed for paper reviews. Paper reviews should represent your original thoughts without any discussion or consultation of any source.

Consequences of dishonesty

Penalties may be up to and including a failing grade (F) in the course, independent of and in addition to the operations of the Honor Code.

Ack: this section is adapted from CS 2130.