prosyslab-classroom / is893-2020-fall

6 stars 7 forks source link

IS893: Advanced Software Security

Logistics

Course Description

This course covers advanced topics in software security. Students will be exposed to techniques that are gaining increasing attention in the software security research communities through research papers and programming assignments. Students will have opportunities to develop their scientific communication skills through writing their own project proposals and presenting their solutions.

Grading

Textbook

Homework

This course includes programming assignments through which students will learn how to design and implement dynamic and static program analyzers.

Academic Integrity Violation

Students who violates academic integrity will get an F.

Schedule (tentative)

# Topics Reading Presentation Tools Homework
- Presentation Schedule
- Project Guideline Project
0 Functional Programming in OCaml
1 Introduction HW0: Hello-world
2 Part 1: Basic Concepts HW1: OCaml Programming
3 Exploitation ASLR/CCS04
ROP/CCS07
COOP/S&P15
KOOBE/USENIXSEC20
ROP/정재황
KOOBE/김현수
ASLR/강우석
COOP/홍재민
GSA
4 Software Integrity CFI/CCS05
DFI/OSDI06
Conti/CCS15
CPI/OSDI14
CFB/USENIXSEC15
TypeArmor/S&P16
CFI/이대진
TypeArmor/신명근
CPI/류혜원
LLVM-CFI
5 Part 2: Dynamic Approaches
6 Runtime Monitoring ASan/USENIXATC12
SoftBound/PLDI09
ASan/이대진
SoftBound/정재황
LLVM-ASAN HW2: SmaLLVM Sanitizer
7 Fuzzing DeepXplore/SOSP17
NEZHA/S&P17
NAUTILUS/NDSS20
NEZHA/홍재민
NAUTILUS/강우석
DeepXplore/류혜원
AFL
LLVM-LibFuzzer
HW3: SmaLLVM Fuzzer
8 Cause Reduction C-Reduce/PLDI12 C-reduce/김현수 C-Reduce HW4: SmaLLVM Delta
9 Fault Localization CBI/PLDI05
CCC/PLDI11
CBI
10 Part 3: Static Approaches Astree/PLDI03
11 Data-flow Analysis HW5: SmaLLVM Dataflow
12 Logic and Constraint Languages
13 Constraint-based Analysis Securify/CCS18, Ethainter/PLDI20 Ethainter/정재황 HW6: SmaLLVM Constraint-based analyzer
14 Type Systems CCured/TOPLAS05
TypeEq/CCS17
CCured/홍재민 CheckerFramework HW7: SmaLLVM Type Checker
15 Symbolic Execution Dart/PLDI05
KLEE/OSDI08
KLEE
16 Program Verification CEGAR/CAV00
VeriSmart/S&P20
CEGAR/김현수 SeaHorn
17 Project Presentation