This course offers an in-depth exploration of ARM architecture and security, with a focus on practical applications and real-world vulnerabilities. Students will gain comprehensive knowledge of ARM instruction sets, memory management, and advanced exploitation techniques.
The course combines theoretical lectures with practical lab exercises, allowing students to apply their knowledge in a controlled environment. Students will work with real ARM systems, develop exploit code, and learn to identify and mitigate security risks.
By the end of the course, students will have a solid foundation in ARM architecture and a deep understanding of security principles, preparing them for advanced roles in system programming, security research, and vulnerability analysis.
Graduate Students: Completion of all four core courses is required. A strong background in security is also expected.
Accelerated Undergraduate Students: Completion of CSC 302 is mandatory. If you have not completed this course, please consult with the instructor for eligibility.
| # | Date | Topic | Slides | Supporting Materials |
|---|---|---|---|---|
| Class 1 | Aug 27, 2024 | Introduction | ch01.pdf |
|
| Class 2 | Sep 03, 2024 | ARM Instruction Set (1): mov/mvn, add/and | ch02.pdf |
|
| Class 3 | Sep 03, 2024 | ARM Instruction Set (2): str/ldr | ch03.pdf |
|
| Class 4 | Sep 10, 2024 | ARM Instruction Set (3): B, BL | ch04.pdf |
|
| Class 5 | Sep 17, 2024 | ARM Instruction Set (4): Stack & Stack Frame | ch05.pdf |
|
| Lab 1 (10 points) |
Sep 17, 2024 | Lab: ARM Instruction Set
Due on: 10/01/2024 23:59:59
|
lab1.pdf |
|
| Class 6 | Sep 24, 2024 | ARM Security: Stack Overflow | ch06.pdf |
|
| Class 7 | Oct 1, 2024 | ARM Security: Stack Overflow (2) | ch07.pdf |
|
| Lab 2 (10 points) |
Oct 1, 2024 | Lab: ARM Stack Overflow
Due on: 10/29/2024 23:59
|
lab2.pdf |
|
| Class 8 | Oct 08, 2024 | Lab2 Review Online Asynchronous |
[Video] |
|
| Class 9 | Nov 05, 2024 | ARM Security: XN and Return-oriented programming (ROP) | ch9.pdf |
|
| Class 10 | Nov 12, 2024 | ARM Security: PLT, GOT and Format String Bug | ch10.pdf | |
| Lab 3 (10 points) |
Nov 14, 2024 | Lab 3: ARM ROP Attack
Due on: 11/26/2024 23:59:59
|
lab3.pdf |
|
| Class 11 | Nov 19, 2024 | ARM Security: Heap Overflow (1) | ch11.pdf |
|
| Class 12 | Nov 26, 2024 | Kernel Exploitation[Video] Online Asynchronous |
ch12.pdf |
|
| Class 13 | Dec 03, 2024 | ARM Security: Heap Overflow (2) House of Force | ch13.pdf |
|
| Final Project (40 + 10 (Quiz) points) |
Dec 02, 2024 | Final Project
Due on: 12/14/2024 23:59:59
Your submission should include: A detailed project report in PDF format to describe what you have done, including screenshots and code snippets and content inside flag (flag.txt) on the remote server. |
final.pdf Target IP: 143.244.149.32 Target Port: 8888 Vulnerable program: final_remote(final.c) Target File (flag): flag.txt XN is on, PIE/ASLR are off Hint Libc base address (on remote server): 0x40835000 |
|