Writing Secure Code in C++

This learning path is intended for people who already know the C and C++ languages and want to improve their ability to write secure code.

7 courses  //   35 videos  //   9 hours of training

Free training week — 1,400+ on-demand courses and hands-on labs

Learn to write secure code in C++

Explore the C and C++ languages. Look at the specificity of the C/C++ languages and how this impacts security, ways C/C++ can interact with the external world, error handling, the execution environment and much more.

Learning path components

Writing Secure Code in C++ Assessment
Assessment
Writing Secure Code in C++ Assessment

Writing Secure Code in C++ Assessment

See how your Writing Secure Code in C++ skills stack up against other professionals in your field.

Number of questions: 20

Writing Secure Code in C++ Project
Practice Exam
Writing Secure Code in C++ Project

Writing Secure Code in C++ Project

Test your secure coding in C++ skills with this project. The project starts with the code of a very simple and unsafe HTTP server. This program receives requests through a TCP socket and returns the requested file or the output of executed commands. The student is guided through discovering the different security issues, describing them and fixing them.

Number of questions: 5

C++ Code Security Cyber Range
Cyber Range
C++ Code Security Cyber Range

C++ Code Security Cyber Range

Gain practical experience and develop your secure C++ coding skills through 10 hands-on labs in the C++ Code Security Cyber Range.

10 labs
2 hours of training

Secure C/C++
Course
Secure C/C++

Secure C/C++

This course is the introduction to the learning path. It presents the teacher, the tools and the content of the courses and explains why secure C/C++ is important.

2 videos
13 minutes of training

C/C++ Particularities
Course
C/C++ Particularities

C/C++ Particularities

This course covers all of the C/C++ particularities a programmer needs to know to create secure programs using these languages.

8 videos
163 minutes of training

Interacting with the World
Course
Interacting with the World

Interacting with the World

This course describes many ways a program can interact with the world.

9 videos
136 minutes of training

Error Handling
Course
Error Handling

Error Handling

This course describes what to do and what not to do when an error occurs.

4 videos
43 minutes of training

Random Number Generation
Course
Random Number Generation

Random Number Generation

This course explains why good random number generation is important when developing software and explores the functions provided for it. It also shows how the functions, the C library provides for that, are flawed. And then, it describes better way to generate random numbers.

3 videos
21 minutes of training

SETUID Bit
Course
SETUID Bit

SETUID Bit

Some programs have “superpowers,” and programming them requires special attention.

4 videos
29 minutes of training

Driver Development
Course
Driver Development

Driver Development

Device drivers, as operating systems, are written in C. When applications interact directly with them, they become the kernel's last line of defense.

5 videos
44 minutes of training

 

What you’ll learn.

  • Using local and global variables safely
  • Detecting and avoiding buffer overflow
  • Manipulating C/C++ strings safely
  • Generating random numbers

Who is this for?

  • C++ programmers
  • Anyone wanting to build their secure coding skills

Meet the author

Martin Dubois

Martin Dubois obtained a degree in computer engineering from Laval University, Québec City, in 1993. He worked in many high-tech start-ups as software developer and software development leader. He mainly developed in C and C++, creating embedded software and device drivers for Windows and Linux. In 2000, he became a freelancer. He helps clients to develop safe, functional and efficient software systems. In addition to developing in C and C++, he provides expert corporate training about device driver development and other related subjects.

Martin is deeply interested in computer security. He never misses the Québec City Hackfest event and even presented subjects twice. He is also a part-time lecturer at colleges and universities, where he teaches computer science, programming and network security.

C++ Code Security Cyber Range

This cyber range helps you develop your knowledge in finding and remediating vulnerabilities in C++ code. You’ll build and reinforce your skills as you progress through labs covering a wide range of C++ code security topics, including using ccpcheck, gdb, XQilla and other tools to find common security issues in C++ code, perform control flow analysis and recognize vulnerabilities that can lead to common application attacks, such as buffer and integer overflows or XPath injection. You will also practice identifying format string vulnerabilities, improper type and pointer management, and other risks.

 

Plans & pricing

Infosec Skills Personal

  • 190+ role-guided learning paths (e.g., Ethical Hacking, Threat Hunting)
  • 100s of hands-on labs in cloud-hosted cyber ranges
  • Custom certification practice exams (e.g., CISSP, Security+)
  • Skill assessments
  • Infosec peer community support

Infosec Skills Teams

$799 per license / year

Book a Meeting
  • Team administration and reporting
  • Dedicated client success manager
  • Single sign-on (SSO)
    Easily authenticate and manage your learners by connecting to any identity provider that supports the SAML 2.0 standard.
  • Integrations via API
    Retrieve training performance and engagement metrics and integrate learner data into your existing LMS or HRS.
  • 190+ role-guided learning paths and assessments (e.g., Incident Response)
  • 100s of hands-on labs in cloud-hosted cyber ranges
  • Create and assign custom learning paths
  • Custom certification practice exams (e.g., CISSP, CISA)
  • Optional upgrade: Guarantee team certification with live boot camps

Award-winning training that you can trust

IDC MarketScape Leader: U.S. IT Training

IDC MarketScape Leader: U.S. IT Training

Infosec Skills

eLearning Content

eLearning Content

Infosec Skills

Best Product - Cybersecurity Training for Infosec Professionals

Best Product - Cybersecurity Training for Infosec Professionals

Infosec Skills

Security Education & Platform

Security Education & Platform

Infosec Skills

Ranked #52 in Top 100 Global Software Sellers

Ranked #52 in Top 100 Global Software Sellers

Infosec

SC Media names Infosec Skills Best IT Security Training

See for yourself why Infosec Skills leads the cybersecurity training industry.