Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Secure Coding in C/C++
Introduction to Secure Programming
A Turbulent Tale: System Crash at 30,000 Feet (2:58)
What You Should Know (1:53)
Balancing Freedom and Responsibility
The Hazards of Manual Memory Management (2:58)
Pointer Pitfalls (3:15)
The Double-Edged Sword: Low-Level System Access (2:22)
Risky Type Conversions (3:43)
Library Landmines: Dangerous Functions (1:57)
Tread with Caution: Legacy Code (2:39)
Common Security Flaws in C and C++ Programming
Unleashing Chaos with Stack and Heap Overflows (5:17)
Overstepping Limits: Integer Overflows (1:40)
Uncontrolled Format Strings: When Small Mistakes Cause Big Problems (3:43)
The Dangers of Improper Error Handling (4:00)
When Code Collides: Race Conditions (3:42)
Principles of Secure C and C++ Programming
Minimizing Attack Surface Area (3:43)
Principle of Least Privilege (5:41)
Fail-safe Defaults (3:06)
Defense in Depth (3:45)
Secure Memory Management in C and C++
C Memory Management (2:55)
C Memory Management Mistakes - Part 1 (4:42)
C Memory Management Mistakes - Part 2 (2:57)
Beyond the Basics: Subtle C Memory Management Errors (4:18)
C++ Memory Management: new and delete (2:24)
C++ Memory Management: Initialization and Placement new (1:43)
C++ Memory Management: Error Handling (2:56)
Smart Pointers: Safer Memory Management in C++ (5:03)
Conclusion
Where to Go from Here? (1:51)
[Bonus] Secure Coding in C/C++: Your Quick Reference Guide
Teach online with
When Code Collides: Race Conditions
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock