Intro
Software engineering needs to apply more security principle to strengthen security of applications
01 Data Protection
Data protection and privacy
02 Exploits
Buffer overflows, error handling and algorithmic complexity exploits
03 Redundancy
How to use redundancy to secure applications and software
04 Privilege Separation
Reduce attack surface by dividing code into multiple modules which each run with minimal privileges
05 Cryptography
06 Testing
Security testing for software
07 HTTP Protocol
Basics of the HTTP protocol
08 Web Attacks
Attacks on web applications and web servers
09 Defense Mechanisms
Technologies used to protect against attacks
10 Authentication
Authentication frameworks
11 Dependencies
Dependencies and supply chain attacks
13 Cases
Real world cases