Instructor: | Prateek Saxena (dcsprs at nus dot edu dot sg) | |
Room & Timings: | VCR Room1 , Tuesdays Noon - 2pm | |
IVLE Page: | CS6231 (counts towards "Computer Systems" cluster for PhD students) | |
Semester: | AY 2013/2014 Semester 1 |
Security breaches cost billions of dollars worth of damage to the computing industry. Today, cybercriminals control armies consisting of several millions of compromised machines. Attacks are increasingly being perpetrated towards enterprises, individuals, critical infrastructure and even governments. At the same time, our computer systems and platforms are fast evolving to meet the demands of the industry and other sciences (like genomics). Outsourcing of big data, increasing use of personalized devices, and our growing dependence on the web and social networking services is transforming the Internet and computer systems. Have you thought about how computer systems can be designed to secure against the practical challenges for the next 10 years and beyond?
The goal of this class is to enable students to:
The table below lists the schedule of topics.
Week | Date | Topic | Reading | Announcements |
---|---|---|---|---|
1 | 13 Aug | Introduction to Computer Security & Course Overview | Database Metatheory: Asking the Big Queries | No summary expected |
2 | 20 Aug | Secure Channels | BlackHat USA 2011: SSL And The Future Of Authenticity Assignment: A1 | Due on Aug 28th |
3 | 27 Aug | Isolation, Permissions and Delegation | Jekyll on iOS: When Benign Apps Become Evil Assignment: A2 |
Due on Sep 3rd |
4 | 3 Sep | Reference Monitors, Probabilistic Defenses & Puzzles | Transparent ROP Exploit Mitigation Using Indirect Branch Tracing Assignment: A3 |
Due on Sep 10th |
5 | 10 Sep | Virtualization & Trusted Computing | NoHype: Virtualized Cloud Infrastructure without the
Virtualization Assignment: A4 |
Due on Sep 17th |
6 | 17 Sep | Information Flow Control | Assessing security threats of looping constructs Assignment: A5 |
Due on Sep 24th |
7 | 1 Oct | Symbolic Analyses | Higher Order Test Generation Assignment: A6 |
Due on Oct 8th |
8 | 8 Oct | Type Safety | CCured: Type-Safe Retrofitting of Legacy Code Assignment: A7 |
Due on Oct 15th |
9 | 22 Oct | Cryptographic File Systems | Lest We Remember: Cold Boot Attacks on Encryption Keys Assignment: A8 |
Due on Oct 29th |
10 | 29 Oct | Secure Outsourced Storage | Iris: A Scalable Cloud File System with Efficient Integrity Checks Assignment: A9 |
Due on Nov 5th |
11 | 5 Nov | Private Computation on Outsourced Data | AUTOCRYPT: Enabling Homomorphic Computation on Servers to Protect Sensitive Web Content
Assignment: A10 |
Due on Nov 12th |
12 | 12 Nov | Anonymity vs. Differential Privacy | Robust De-anonymization of Large Sparse Datasets
Assignment: A11 |
Due on Nov 21st |
For each paper, we will release a set of questions that will help your critically think about what you learnt from the paper. The questions are designed to be somewhat open-ended, and may not have a single right answer. So, feel free to write your interpretation of the concepts you read. Your response is to be submitted as a paper summary.
Each paper summary is graded out of 5 points, and you are expected to submit only 6 paper summaries. Your first 6 paper summary scores are counted towards your final grade. That is, if choose to submit paper summaries for all the weeks, we will take your paper summary scores for your first 6 weeks.
Paper summaries are to be submitted before the next lecture at 9 a.m., in PDF format. Please submit it directly on IVLE in the workbin. Please include your name and matriculation number in your submission. Please name your submission PDF file in the format: "Week-<N>-<your-matriculation-number>;", where N is the week number (from the table above). For example, if your matriculation number is "A4878822" and your submission is for the paper posted in week 3, then the filename should be "Week-3-A4878822".
Please run a plaigarism check on your submission. This is available built into IVLE.
This class is a research-focused class. It counts towards the computer systems cluster requirement for PhD students. I will explain the detailed logistics of the course in the first lecture. There will be no exam, labs or tutorials for the course. I intend to keep the classes for critical and lively discussions. To get the most out of the class, ask a lot of questions! Naive questions are often the best.
The main deliverable in the class is a term project. You are expected to write a 6-10 page (in 10pt ACM style) paper on any topic with relevance to security. See the projects page for more details. Your project can be done in a team of at most 2 students.
This is a research focussed class with a heavy weightage on producing a useful research paper. In lectures, we will broadly discuss emerging challenges and attacks, with specific defense concepts. Take this class if you want to explore research ideas in security. I strongly invite students who are still choosing their research areas to this class. I am also keen to see students from outside of security come and apply their knowledge, especially if you work in PL, operating systems, machine learning, HCI or NLP. The best ideas arise from "out-of-the-box" thinking. Students who are passionate about building systems and have a curiosity about computer security are welcome. If you are unsure about about whether taking this class, I encourage you to show up for the first lecture.
The prerequisite is good undergraduate level understanding of computer science and having taken a undergraduate or graduate course in security. Exceptions to prerequisite requirements are allowed with the permission of the instructor.
In this class, you will be exposed to several powerful attack techniques. This class is not an invitation exploit vulnerabilities in the wild without informed consent of all involved parties. Attacking someone else's computer system is an offence; you are expected to use your knowledge with discretion.
For all readings and assignments, please feel free to discuss with your peers and use the Internet. But, you should write up your own submissions and cite any external resources you utilize in your write-ups. All students must comply with NUS academic honesty policies.
Here is an initial list of project ideas to help you get started on research problem. You are encouraged to find and work on a problem that you really like, even if it has only some relevance to computer security. If you have your own idea, that's good!