Modern C++ Secure Coding Practices: Const Correctness

This course will show you attacks hackers use against C++ programs and teach you how const correctness can prevent many of the bugs these attacks leverage.
Course info
Level
Intermediate
Updated
Jul 10, 2018
Duration
43m
Table of contents
What Is Const Correctness?
Bug Class: Memory Corruption via Pointer Mutation
Bug Class: Control Flow Hijacking via Accidental Assignment
Const Correctness as a Best Practice
Course Overview
Description
Course info
Level
Intermediate
Updated
Jul 10, 2018
Duration
43m
Description

Attackers often utilize small and otherwise unnoticed coding mistakes to hack applications. In this course, Modern C++ Secure Coding Practices: Const Correctness, you'll learn how these attacks take place and how you can prevent them from using const correctness. First, you'll take a look at how to properly handle pointers. Next, you'll discover how you can avoid accidentally assigning to variables. Finally, you'll explore strategies which can aid you in being const correct. When you're finished with this course, you'll have a foundational knowledge of const correctness that will help you move forward and write more secure and future-proof code.

About the author
About the author

Nick Cano is a published technical author, a Senior Security Architect at Cylance, and a life-long hacker. Nick specializes in software security, which requires daily use of his strong background in software development and reverse engineering.

Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hey guys, my name is Nick Cano, and I'd like to welcome you to my Pluralsight course, Modern C++ Secure Coding Practices: Const Correctness. Const correctness is a way of writing code, which can prevent common mistakes that may lead to memory corruption, unintended branching, undefined behavior, and in the worst case, exploitable security holes. This course will focus on the security, visiting multiple different attacks against various common bugs. We'll explore how these attacks work, why they're possible, and how applying const correctness can enable your compiler to be an integral part of prevention. In addition, we'll talk about strategies you can use to compliment your const correct code, and enable you to really knock security by design out of the park. Before starting this course, I recommend you to be comfortable in C++. This means having a good grasp of the syntax, a familiarity with pointers, an understanding of logical constructs, and a reasonable grasp of data types and data structures. You bring this, my course will bring the rest, and you'll be on your way to writing clean, more secure, and more future-proof C++ code. I'm looking forward to it.