Recent advances in Web technology aim to improve end-users' Web browsing experience through a variety of new techniques and tools: Ajax-enabled client-side code execution, mashup applications, and browser extensions, to name a few. However, these techniques also raise several new security concerns: How does a Web browser confine untrusted code either in the form of scripts downloaded from Web pages or as plugins and extensions? How can a user ensure that a script in a mashup will not compromise his privacy? How to deal with worms that exploit browser bugs and hijack control of the browser? These and similar questions are the focus of much recent research in Computer Security.
In this light seminar, we will study the state of the art in attacks and defenses on modern Web applications and Web browsers. We will discuss papers from recent Computer Security and Operating Systems conferences such as the IEEE Symposium on Security and Privacy, ACM CCS, USENIX Security, SOSP, OSDI and the WWW Conference.
The class will be discussion-oriented, and each student will be expected to lead the presentation of one or two papers during the course of the semester. We plan to cover 1-2 papers per week. Occasionally, we will also have invited speakers.
Here is the reading list for this course. We will discuss one or two papers a week, roughly in the order that they appear in this list. The seminar will be informal, and grades will be based upon class participation. Please see the class schedule for the assigned readings for each week.
Each week, we will discuss one or two papers from our reading list according to the schedule below.
| Date | Assigned reading | Presenter (tentative) | Slides |
| September 2 | Introduction and organization (no reading) | Vinod | |
| September 9 |
OP
Chrome |
Mohan | PPT |
| September 16 | Tahoma | Mark | |
| September 23 |
DNS Rebinding
BEEP |
Rick
Luying Li |
|
| September 30 |
ForceHTTPS
Dynamic Pharming |
Huijun
Bill |
|
| October 7 |
iFrame
Honeymonkey |
Nitya Yan Xiong |
|
| October 14 |
Interframe
XSRF |
Crystal |
|
| October 21 |
Caja
CoreScript |
Tuan | |
| October 28 | No class (CCS 2008) | - | |
| November 4 | MashupOS | Nishat | |
| November 11 |
Smash
Subspace |
Qiang Jinyun Yan |
|
| November 18 |
PwdHash
Skins |
Zhiyuan Ed |
|
| December 2 |
Doppelganger
Privacy |
Chih-Cheng Rezwana |
|
| December 9 |
Fable
Swift |
Shakeel |
Note that you are required to make your own slides for the papers that you present in class. Here is an informal set of guidelines that you should use as you prepare to present papers in class. These guidelines may not be appropriate for all the papers that we discuss in class (especially position papers, which are speculative and propose new ideas, and may thus not contain a full-fledged experimental results section). There are several excellent resources on the Web with advice on effective presentation; please see the resources section for links to these resources.
In each case, I've also suggested the approximate timeframe for each section of your presentation (assuming a one hour presentation: scale things down for a half hour presentation). Note that there will be questions and discussion as you present the paper, so please use the timeframe as a guideline for the number of slides that you want to prepare.