Computer Systems Security (Winter 2016): Difference between revisions
Line 173: | Line 173: | ||
</p> | </p> | ||
</td> | </td> | ||
<td><p>Stack | <td><p>Aleph One (aka Elias Levy), [http://www.phrack.com/issues/49/14.html#article Smashing The Stack For Fun And Profit] (Phrack 49, 1996)</p></td></tr> | ||
<tr> | <tr> | ||
<td> | <td> | ||
Line 183: | Line 183: | ||
</p> | </p> | ||
</td> | </td> | ||
<td><p> | <td> | ||
<p>Wikipedia, [https://en.wikipedia.org/wiki/Buffer_overflow_protection Buffer Overflow Protection]<br> | |||
Crispin Cowan et al., [https://www.usenix.org/legacy/publications/library/proceedings/sec98/cowan.html StackGuard: Automatic Adaptive Detection and Prevention of Buffer-Overflow Attacks] (USENIX Security Symposium, 1998)</p> | |||
</td> | |||
</tr> | |||
<tr> | <tr> | ||
<td> | <td> | ||
Line 193: | Line 197: | ||
</p> | </p> | ||
</td> | </td> | ||
<td><p>Network Firewalls</p></td></tr> | <td><p>ASLR, Return-oriented Programming Network Firewalls</p></td></tr> | ||
<tr> | <tr> | ||
<td> | <td> |
Revision as of 20:47, 26 February 2016
Course Outline
Here is the course outline.
Hacking Opportunities
The Hacking Opportunities page lists potential hacking opportunities that you can attempt for your hacking journal. If you attempt but do not successfully accomplish one of them, be sure to document what you tried. As you learn more, you may come back to them and try again.
Resources
Readings
- For the first part of the course we will be reading selections from Trent Jaeger's Operating Systems Security textbook. You can download the PDF through Carleton's library. In the reading assignments this text will be referred to as "Jaeger".
- An excellent but dated text on browser security is Michal Zalewski's Browser Security Handbook.
Other Courses
- Dan Boneh ran an excellent course at Stanford in Spring 2015 on Computer and Network Security. This course has many interesting readings that we will not be covering. Also, the assignments are very good sources for hacking opportunities.
- The assignments from the Winter 2015 run of COMP 4108 are available. They are a reasonable start for several hacking opportunities.
Lectures and Exams
Date |
Topic |
Readings |
---|---|---|
Jan. 7 |
Jaeger, Chapter 1 (Introduction) | |
Jan. 12 |
Jaeger, Chapter 2 (Access Control Fundamentals) | |
Jan. 14 |
Jaeger, Chapter 3 (Multics) and Chapter 4 (UNIX & Windows) | |
Jan. 19 |
Jaeger, Chapter 6 (Security Kernels) and Chapter 7 (Securing Commercial Operating Systems) | |
Jan. 21 |
Jaeger, Chapter 9 (LSM & SELinux) and Chapter 10 (Secure Capability Systems) | |
Jan. 26 |
Jaeger, Chapter 11 (Secure Virtual Machine Systems) and Chapter 12 (System Assurance) | |
Jan. 28 |
||
Feb. 2 |
||
Feb. 4 |
||
Feb. 9 |
||
Feb. 11 |
||
Feb. 23 |
||
Feb. 25 |
Midterm (in class) |
|
Mar. 1 |
Aleph One (aka Elias Levy), Smashing The Stack For Fun And Profit (Phrack 49, 1996) | |
Mar. 3 |
Wikipedia, Buffer Overflow Protection |
|
Mar. 8 |
ASLR, Return-oriented Programming Network Firewalls | |
Mar. 10 |
Application Firewalls | |
Mar. 15 |
||
Mar. 17 |
||
Mar. 22 |
||
Mar. 24 |
||
Mar. 29 |
||
Mar. 31 |
||
Apr. 5 |
||
April 7 |
||
April 19, 9 AM |
Final Exam |
Assignments
Due Date |
Assignments |
---|---|
Jan. 30 |
|
Feb. 22 |
|
Mar. 19 |
|
April 4 |
Lecture Notes Guidelines
Part of your participation mark is doing notes for at least one of the lectures. Here are the guidelines for those notes.
The class TA Borke (BorkeObadaObieh at cmail.carleton.ca) will be handling course notes. Please contact her to schedule your class to take notes.
Borke or Anil will set you up with an account on this wiki. You'll enter your initial draft notes here and then work with Borke to make sure they are of sufficient quality. This may require a few rounds of revisions; however, if you follow the guidelines below it shouldn't be too bad.
You should plan on organizing your notes as follows:
- Organize them in at least the following sections: Topics & Readings and Notes.
- The Topics & Readings section lists the main topics covered in the class, e.g. "buffer overflows". Please use an unordered bulleted list (using *'s in wiki markup). In this section also list readings relevant to the lecture that were mentioned in class.
- Put your notes in the Notes section.
Use (nested) lists if appropriate for the notes; however, please have some text that isn't bulleted. Please try to make the notes even if you did not attend lecture; however, you don't need to cover every small bit of information that was covered. In particular the notes do not need to include digressions into topics only tangentially related to the course. Complete sentences are welcome but not required.