CSCI 1650 covers software exploitation techniques and state-of-the-practice mechanisms for hardening software. The course begins with a summary of prevalent software defects, typically found in applications written in memory unsafe languages, like C/C++, and proceeds with studying traditional and modern exploitation techniques, ranging from classical code injection and code reuse up to the latest goodies (e.g., JIT-ROP). It also covers defenses against certain vulnerability classes and the way(s) to bypass them. Students will be introduced to advanced software exploitation techniques and countermeasures, and study (in depth) the boundaries and effectiveness of standard hardening mechanisms, such as address space randomization and stack and heap protections.
10% | Participation (Ed Discussion) |
---|---|
60% | Assignments (CTF-like write-ups) |
10% | Midterm |
20% | Final |
This course would not be possible without the support and assistance of the following people:
echo @cs.brown.edu|sed 's/^/vpk/'
echo @cs.brown.edu|sed 's/^/bbirsel/'
echo @cs.brown.edu|sed 's/^/jhu74/'
echo @cs.brown.edu|sed 's/^/klee165/'
echo pn^guye37@cs.brown.edu|tr -d ^
echo @cs.brown.edu|sed 's/^/ychu12/'
12/04/2024 | Final exam. |
---|---|
12/02/2024 | Lecture 0x17 posted. |
11/27/2024 | Final is on 12/04/2024. |
11/27/2024 | No class today. |
11/25/2024 | Lecture 0x16 posted. |
11/20/2024 | Assignment 0x4 is due today. |
11/20/2024 | Lecture 0x15 posted. |
11/18/2024 | Lecture 0x14 posted. |
11/13/2024 | Assignment 0x4 is due on 11/20/2024. |
11/13/2024 | Lecture 0x13 posted. |
11/11/2024 | Lecture 0x12 posted. |
11/06/2024 | Assignment 0x4 posted. |
11/06/2024 | Assignment 0x3 is due today. |
11/06/2024 | Lecture 0x11 posted. |
11/04/2024 | Lecture 0x10 posted. |
10/30/2024 | Assignment 0x3 is due on 11/06/2024. |
10/30/2024 | Lecture 0xf posted. |
10/28/2024 | Lecture 0xe posted. |
10/23/2024 | Assignment 0x3 posted. |
10/23/2024 | Assignment 0x2 is due today. |
10/23/2024 | Midterm Exam. |
10/21/2024 | Lecture 0xd posted. |
10/16/2024 | Assignment 0x2 is due on 10/23/2024. |
10/16/2024 | Midterm is on 10/23/2024. |
10/16/2024 | Lecture 0xc posted. |
10/14/2024 | No class today. |
10/09/2024 | Assignment 0x2 posted. |
10/09/2024 | Assignment 0x1 is due today. |
10/09/2024 | Lecture 0xb posted. |
10/07/2024 | Lecture 0xa posted. |
10/02/2024 | Assignment 0x1 is due on 10/09/2024. |
10/02/2024 | Lecture 0x9 posted. |
09/30/2024 | Lecture 0x8 posted. |
09/25/2024 | Assignment 0x1 posted. |
09/25/2024 | Lecture 0x7 posted. |
09/23/2024 | Lecture 0x6 posted. |
09/18/2024 | Lecture 0x5 posted. |
09/16/2024 | Lecture 0x4 posted. |
09/11/2024 | Lecture 0x3 posted. |
09/09/2024 | Lecture 0x2 posted. |
09/04/2024 | Lecture 0x1 posted. |
09/04/2024 | Welcome to CSCI 1650! |