Topics in Computer and Network Security

Stanford CS 356, Fall 2023

CS 356 is graduate course that covers foundational work and current topics in computer and network security. The course consists of reading and discussing published research papers, presenting recent security work, and completing an original research project.

Course Information

Discussion: Mon/Wed 3:00–4:20 PM. Gates B12.
This course is largely based on in-person discussion rather than lecture. Attendance and participation is expected.

Instructor: Zakir Durumeric
Office Hours: M/W 4:30–5:00 PM, or by appointment.

Course Assistant: Kimberly Ruth. Office hours by appointment.

Prerequisites: CS 356 is open to all graduate students as well as advanced undergraduate students. While the course has no official prerequisites, it requires a mature understanding of software systems and networks. Students are expected to have taken CS 155: Computer and Network Security or equivalent.

Communication: We use Ed for announcements and discussion. Students can submit anonymous feedback at any time.

Submissions: All course assignments should be submitted through Gradescope. Enrollment code: VBDPWP.

Topics and Readings

The tentative schedule and required readings for the class are below:

9/27  Introduction

Against Security Nihilism

Blog Post. 2016. Chris Palmer.

Mining Your Ps and Qs: Detection of Widespread Weak Keys...

SEC '12. N. Heninger, Z. Durumeric, E. Wustrow, J.A. Halderman.

How to Read a Paper

S. Keshav.

10/2  Web Privacy and Security

The Web Never Forgets: Persistent Tracking Mechanisms in the...

CCS '14. Gunes Acar, Christian Eubank, Steven Englehardt, Marc Juarez, Arvind Narayanan, Claudia Diaz.

Imperfect Forward Secrecy: How Diffie-Hellman Fails in Practice

CCS '15. D. Adrian, K. Bhargavan, Z. Durumeric, P. Gaudry, M. Green, J.A. Halderman, N. Heninger, A. Springall, E. Thomé, L. Valenta, B. VanderSloot, E. Wustrow, S. Zanella-Beguelin, P. Zimmermann.

10/4  Usability

Alice in Warningland: A Large-Scale Field Study of Browser Security

SEC '13. Devdatta Akhawe, Adrienne Porter Felt.

...no one can hack my mind”: Comparing Expert and Non-Expert Security Practices

SOUPS '15. Iulia Ion, Rob Reeder, Sunny Consolvo.

10/9  Authentication and Phishing

The Tangled Web of Password Reuse

NDSS '14. Anupam Das, Joseph Bonneau, Matthew Caesar, Nikita Borisov, XiaoFeng Wang.

Detecting credential spearphishing in enterprise settings

SEC '17. Grant Ho, Aashish Sharma, Mobin Javed, Vern Paxson, David Wagner.

10/11  Denial of Service

Inferring Internet Denial-of-Service Activity

SEC '01. David Moore, Geoffrey Voelker, Stefan Savage.

Understanding the Mirai Botnet

SEC '17. M. Antonakakis, T. April, M. Bailey, M. Bernhard, E. Bursztein, J. Cochran, Z Durumeric, J.A. Halderman, L. Invernizzi, M. Kallitsis, D. Kumar, C. Lever, Z. Ma, J. Mason, D. Menscher, C. Seaman, N. Sullivan, K. Thomas, Y. Zhou.

10/16  Spam and eCrime

Framing Dependencies Introduced by Underground Commoditization

WEIS '15. Kurt Thomas, Danny Huang, David Wang, Elie Bursztein, Chris Grier, Thomas Holt, Christopher Kruegel, Damon McCoy, Stefan Savage, Giovanni Vigna.

Spamalytics: An Empirical Analysis of Spam Marketing Conversion

CCS '08. Chris Kanich, Christian Kreibich, Kirill Levchenko, Brandon Enright, Geoffrey Voelker, Vern Paxson, and Stefan Savage.

10/18  Software Attacks

Hacking Blind

S&P '14. Andrea Bittau, Adam Belay, Ali Mashtizadeh, David Mazieres, Dan Boneh.

SoK: Eternal War in Memory

S&P '13. Laszlo Szekeres, Mathias Payer, Tao Wei, Dawn Song.

10/23  Software Defenses

Native Client: A Sandbox for Portable, Untrusted x86 Native Code

S&P '09. Bennet Yee, David Sehr, Gregory Dardyk, J. Bradley Chen, Robert Muth, Tavis Ormandy, Shiki Okasaka, Neha Narula, Nicholas Fullagar.

Multiprogramming a 64 kB Computer Safely and Efficiently

SOSP '17. Amit Levy, Bradford Campbell, Branden Ghena, Daniel B. Giffin, Pat Pannuto, Prabal Dutta, Philip Levis.

10/25  Malware and Supply Chain

Towards Measuring Supply Chain Attacks on Package Managers for Interpreted Languages

NDSS '21. Ruian Duan, Omar Alrawi, Ranjita Pai Kasturi, Ryan Elder, Brendan Saltaformaggio, Wenke Lee.

Before We Knew It: An Empirical Study of Zero-Day Attacks In The Real World

CCS '12 Leyla Bilge and Tudor Dumitraş.

10/30  Side Channels and Information Leakage

Timing Analysis of Keystrokes and Timing Attacks on SSH

SEC '01. Dawn Song, David Wagner, Xuqing Tia.

Spectre Attacks: Exploiting Speculative Execution

S&P '19. P. Kocher, J. Horn, A. Fogh, D. Genkin, D. Gruss, W. Haas, M. Hamburg, M. Lipp, S. Mangard, T. Prescher, M. Schwarz, Y. Yarom.

11/1   Hardware

Stealthy Dopant-Level Hardware Trojans

CHES '13. Georg Becker, Francesco Regazzoni, Christof Paar, Wayne Burleson.

Flipping Bits in Memory Without Accessing Them: An Experimental Study of DRAM Disturbance Errors

ISCA '14 Y. Kim, R. Daly, J. Kim, C. Fallin, J.H. Lee, D. Lee, C. Wilkerson, K. Lai, O. Mutlu.

11/6  Cyber Physical Systems

Comprehensive Experimental Analyses of Automotive Attack Surfaces

SEC '11. Stephen Checkoway, Damon McCoy, Brian Kantor, Danny Anderson, Hovav Shacham, Stefan Savage.

W32.Stuxnet Dossier

Symantec Technical Report. Nicolas Falliere, Liam Murchu, Eric Chien.

11/8  Machine Learning

Towards Evaluating the Robustness of Neural Networks

S&P '16. Nicholas Carlini and David Wagner.

Outside the Closed World: On Using Machine Learning For Network Intrusion Detection

S&P '10. Robin Sommer and Vern Paxson.

11/13  Vulnerable Populations / Security For Everyone

A Stalker’s Paradise: How Intimate Partner Abusers Exploit Technology

CHI '18 Diana Freed, Jackeline Palmer, Diana Minchala, Karen Levy, Thomas Ristenpart, Nicola Dell.

A11y Attacks: Exploiting Accessibility in Operating Systems

CCS '14 Yeongjin Jang, Chengyu Song, Simon Chung, Tielei Wang, Wenke Lee.

11/15  Privacy and Dark Patterns

Robust De-anonymization of Large Sparse Datasets

S&P '08. Arvind Narayanan and Vitaly Shmatikov.

Dark patterns at scale: Findings from a crawl of 11K shopping websites

S&P '08. Arunesh Mathur, Gunes Acar, Michael Friedman, Eli Lucherini, Jonathon Mayer, Marshini Chetty, Arvind Narayanan.

11/20   Thanksgiving Break

No class.

11/22   Thanksgiving Break

No class.

11/27  Surveillance and Anonymity

Keys Under Doormats

MIT Technical Report '15. H. Abelson, R. Anderson, S. Bellovin, J. Benaloh, M. Blaze, W. Diffie, J. Gilmore, M. Green, S. Landau, P. Neumann, R. Rivest, J. Schiller, B. Schneier, M. Specter, D. Weitzner.

Tor: The Second-Generation Onion Router

SEC '04. Roger Dingledine, Nick Mathewson, Paul Syverson.

11/29  Government Attacks and Disinformation

When Governments Hack Opponents: A Look at Actors and Technology

SEC '14. Bill Marczak, John Scott-Railton, Morgan Marquis-Boire, Vern Paxson.

Disinformation as Collaborative Work: Surfacing the Participatory Nature of Strategic Information Operations

CSCW '19. Kate Starbird, Ahmer Arif, Tom Wilson.

12/4  Ethics and Problem Selection

The Moral Character of Cryptographic Work

Phillip Rogaway.

Science, Security, and the Elusive Goal of Security as a Scientific Pursuit

S&P '17. Cormac Herley and P.C. van Oorschot.

12/6   Final Presentations

No required reading. Attendance mandatory.

Course Structure

This course is composed of three parts: reading and discussing foundational papers in every class, reading and presenting recent work for one class, and completing a group research project. Grading will be based on:

Readings and Discussion (30%)

We will read and discuss 1–2 papers for each class. Typically, these are formative works in an area of security. Students should come prepared to actively discuss assigned papers and to make substantive intellectual contributions. This means that you need to thoroughly read each paper ahead of time. Before each section, students will submit a short (400 word) summary and reaction for each each paper, as well as a proposal of one discussion question for class.

Students should submit the reading assignments through Gradescope by 2:30 pm on the day of each class. Paper responses should be completed individually without the assistance of LLMs (e.g., ChatGPT).

Grading will be based 20% on these written responses and 10% on in-class participation. We do not allow any late days for paper reactions, but students may skip two paper summaries and two lectures without penalty. We will take class attendance. However, participation grades are based on not only attendence, but active participation during class discussion.

Do not underestimate the amount of time required to properly read and process a research paper. Expect to spend several hours preparing for each section.

Topic Presentation (15%)

While reading formative papers helps to demonstrate how a subfield started, it oftentimes leaves us wondering how the area has evolved. To fill this gap, each student in the class will present one recent paper during the quarter topically relevant to that day's class. At the start of the quarter, students will have the opportunity to sign up for the topic/date that they want to present their paper. Stuents will have 12-15 minutes to present their paper.

Students are expected to do a literature search and to select a paper that was published in the last three years from a top-tier venue in security (e.g., IEEE Security and Privacy, USENIX Security, ACM Computer or Communication Security) or adjacent field (e.g., CHI, NSDI, ASPLOS, PLDI, etc.). Students should submit their papers to approval to the teaching staff a week prior to their presentation.

Course Project (55%)

Students will complete a quarter-long original research project in small groups (1–3 students) on a topic of their own choosing. Groups will present their work during the last two sections as well as submit a 6–10 page report, similar to the papers we read in the course.

Projects have four graded components:

  • Project Proposal (5%). Project groups will meet with course staff to discuss their project during the third week of class and submit a one page project proposal. Written proposals are due on 10/16.
  • Mid-Quarter Progress Report (5%). Submit a short (1–2 pages) progress report part way through the quarter. The report should indicate what has been accomplished, what work is remaining, obstacles the team has encountered, and any preliminary data or insights. Due 11/17.
  • Class Presentation (10%). Each group will give a 10 minute class presentation during the last week of the course.
  • Final Paper (35%). Groups will submit a final project report similar to the papers we read in the course. Papers should be 6–10 pages and use the USENIX LaTeX template. It may be helpful to read Writing Technical Articles if you haven't previously published any work in computer science. Due 12/8.

Students should submit all reports through Gradescope by 11:59PM on the day of each deadline.

In past offerings, well-executed projects have led to publications at top-tier security conferences and workshops. I'm happy to work with groups to publish their work.

This class has no final exam. Attendance on 12/6 is required.