CS 440X (D09): Software Security Engineering
Class and Reading Schedule

Home | Staff | Syllabus | Assignments | MyWPI | Policies


Texts

Given the wealth of information online about security, we will not have a textbook for this class. Our readings will come from a combination of papers, blogs, tutorials, and other online sources.

That said, there are some excellent reference books out there. I particularly like Ross Anderson's Security Engineering (first edition available online). For web security, check out Dafydd Studdard and Marcus Pinto's Web Application Hacker's Handbook.

As background, you should read the following papers during the first week of the course:


Class Schedule

Highlighted readings should be done before class. Other readings provide additional information for those interested in the topic. Some topics may move to different dates in the second half of the course.

Mar 16: Course Overview

Mar 17-20: Attacking Inputs
Discussors (2 slots): Forging HTTP requests via Flash: ____________,   NoScript and RequestPolicy (browser extensions): ____________

Readings:

Mar 23: Threat Modelling

Readings:

Mar 24: Sessions and Multi-stage Applications
Discussors (1 slots): Changing register values on running programs: Patrick M

Readings:

Mar 26: Breaking TurnOut/Web
Discussors (2 slots): Nam,   Andrey

Mar 27: Access Control

Readings:

Mar 30: Authentication and Identity
Discussors (3 slots): biometrics: Tyler,   e-passports: Aaron,   PIN numbers: Patrick C.

Readings:

Mar 31: Patching TurnOut/Web
Discussors (2 slots): Chris P.,   James C.

Apr 2: Password Schemes
Discussors (2 slots): site keys: Jessica,   OpenID: Josh and Maurice

Readings:

Apr 3: Information Flow

Apr 6: Attacking C Code

Readings:

Apr 7: Robust C Programming

Readings:

Apr 9: Information Disclosure
Discussors (2 slots): Greg B.,   Peter L.

Apr 10: Data Aggregation
Discussors (2 slots): Mali,   Antoniya

Apr 13: Aggregation and Privacy in Social Networks

Readings:

Apr 14, Part 1: Breaking TurnOut/C
Discussors (2 slots): Rob,   Radoslav

Apr 14, Part 2: Protocols and Analysis
Discussors (2 slots): CPPL: Konstantin,   TBD: Justin

Apr 16: Usability
Discussors (3 slots): Matt D.,   James J.,   Edwin

Readings:

Apr 17: Patching TurnOut/C
Discussors (2 slots): Jordan,   Keilin

Apr 20: No Class

Apr 21: Encryption
Discussors (1 slots): SSL: Mig

Apr 23: No Class

Apr 24: Digital Rights Management
Discussors (3 slots): Greg H.,   Nam,   Chris K.

Apr 27: Network Security (Guest Lecture)

Apr 28: DoS Attacks
Discussors (2 slots): Nam,   Mali

Apr 30: Airline Security
Discussors (2 slots): Gerard,   Kevin

May 1: Electronic Voting
Discussors (3 slots): Andrey,   Kevin,   Jessica

May 4: Potpourri
Discussors (3 slots): Secure Browser Architectures: James J,   Email spoofing: Radoslav,   TBD: Rob

May 5: Course Evals and Experimental Course Feedback