Course Overview

C remains a foundational programming language widely used in system software, embedded systems, and performance-critical applications. However, its flexibility comes at the cost of security risks if not used properly. Learning secure programming practices in C is crucial for developers working in environments where performance and low-level system access are essential. This course equips learners with the skills to identify and mitigate common vulnerabilities associated with C, ensuring the development of robust and secure software.

This course begins with an introduction to the C programming environment, followed by best practices for writing secure code using libraries and proper structures. Learners build their first C application and explore the inherent weaknesses of the language. The course delves into critical topics such as memory allocation, buffer overflows, and return-oriented programming (ROP) attacks. It continues with format string vulnerabilities, secure use of variable types, and how to prevent integer overflows and underflows. It also covers pointer-related issues like null pointer dereference, use-after-free, and double-free errors. Finally, the course addresses secure input/output practices to avoid common file system vulnerabilities.

By the end, learners will understand C's core security pitfalls and how to avoid them to write safer, more secure applications.

What You Will Learn

  • Develop a C program in a Secured Way
  • Learn about the basics of C Programming Language
  • Learn about String Formatting in C
  • Learn about Null Pointers in C
  • Learn how to identify potential vulnerabilities in a C language Code

Program Curriculum

  • Improving C Application Security
  • Developing your First C Program
  • Identifying Common C Weaknesses
  • Chapter 1 Quiz

  • Memory Allocation and the Stack
  • Buffer Overflow Vulnerabilities:
  • Introduction to ROP
  • Chapter 2 Quiz

  • Introduction to Format String Specifiers
  • Format String Vulnerabilities
  • Chapter 3 Quiz

  • Introduction to Variable Types and Typecasting
  • Integer Overflow Vulnerabilities
  • Integer Underflow Vulnerabilities
  • Chapter 4 Quiz

  • Introduction to Pointers
  • Potential Pointer Problems
  • Null Pointer Dereference
  • Misuse of Freed Pointers
  • Chapter 5 Quiz

  • Managing User Input
  • Securely Performing I/O
  • Chapter 6 Quiz
Load more modules

Instructor

Howard Poston

Howard Poston has over a decade of experience in C, C++, Java programming and a background in cybersecurity. He is a blockchain and cybersecurity trainer, writer, consultant, and researcher and has a Master’s degree in Cyber Operations, and is a Certified Ethical Hacker. Howard also has experience in teaching online courses, having created and delivered half a dozen different courses live, remotely, and on-demand on different cybersecurity topics

Join over 1 Million professionals from the most renowned Companies in the world!

certificate

Choose the Pro Plan That Fits Your Learning Journey

Invest in your future with flexible Pro subscription plans. Whether you're starting your cybersecurity journey or expanding your expertise, choose the membership duration that works for you and gain access to our complete learning platform.

Monthly Plans
Annual Plans
Save 20% with our annual plans!

Pro

Ideal for continuous learning, offering extensive resources with 900+ courses and diverse Learning Paths to enhance your skills.

$ 599.00
Billed annually or $69.00 billed monthly

What is included

  • Access to 900+ Premium Short Courses
  • 70+ Structured Learning Paths
  • Validation of Completion with All Courses and Learning Paths
  • New Courses Added Every Month
Early Access Offer

Pro +

Experience immersive learning with Practice Labs and CTF Challenges for comprehensive skill-building.

$ 699.00
Billed annually or $79.00 billed monthly

Everything in Pro and

  • 500+ Practice Labs with Guided Instructions
  • 400+ CTF Challenges with Detailed Walkthroughs
  • New Practice Labs and Challenges Added Every Month

Related Courses

1 of 50