Summary
1. Introduction to Rust
What’s Rust?
Rust basics 101
Learning Rust
Code examples
2. Rust ecosystem
Rust toolchains
Compilation
Development tools
Development IDEs
3. Security concepts
Security by design
Ownership
Borrowing
Lifetimes
4. Rust common vulnerabilities
Error handling & Unwrapping
Panicking macros
Arithmetic errors
UTF-8 strings handling
Index out of bounds
Stack overflow
Resource exhaustion / OOM
Exercises
5. Unsafe codes
What's unsafe code?
Tooling for detection
Out of bounds access
Use after free (UAF)
Double free
Memory leak
Uninitialized Memory
Data Races and Race Conditions
Exercises
6. Rust advanced vulnerabilities
Logic errors
(Un)Soundness
FFI vulnerability
Cryptographic attacks/vulnerabilities
7. Auditing tools and code review
Attack surface discovery
Auditing tools
Rust code review
Exercices