Secure Coding - C
0.0
(0)
Tier 4 Medium Skill Path Secure Coding
Understand various memory vulnerabilities in C through examples, and learn how to prevent and patch them through quizzes and patching exercises. Completing this Path will give you skills for writing more secure C code.
Secure Coding - C
0.0
(0)
Tier 4 Medium Skill Path Secure Coding
Understand various memory vulnerabilities in C through examples, and learn how to prevent and patch them through quizzes and patching exercises. Completing this Path will give you skills for writing more secure C code.
This Path is only available to
Expert User users.
0% Completed Total 0 completed
Lecture 0 /22
22
Wargame 0 /12
12
Quiz 0 /10
10
You can access locked objectives by upgrading your plan or purchasing the units separately.
The Lab is a practice and is not included in the overall progress.

Why It's Worth Your Time

C remains the backbone of critical systems such as operating systems, embedded systems, and browser rendering engines. However, because C does not guarantee memory safety, even minor mistakes can lead to severe security vulnerabilities. While developers must secure every part of their code, attackers only need to find a single flaw — making secure coding an essential skill, not an option. This Path is designed for anyone who wants to develop the ability to write safer, more secure code in C.

Topics Covered

  • Secure coding in C through theory, quizzes, and patching exercises
  • Preventing integer overflows and floating-point errors
  • Safe variable declaration and initialization
  • Avoiding memory issues like null dereference and Use-After-Free
  • Handling security risks in file and I/O operations
  • Secure techniques for multithreading and concurrency
  • Additional C-based secure coding practices

Recommended For

  • Those who want secure coding skills for security, gaming, systems, or embedded development
  • Developers who want to write safer C code
  • Anyone interested in C-related security vulnerabilities

Prerequisite Knowledge

  • Strong understanding of basic C programming
  • Knowledge of pointers, arrays, and structures
  • Experience in building simple programs in C
Unit Composition
Total 11 units
  1. 1
    10.0
    (1)
    Expert Only
    10.0
    (1)
    Expert Only
    Learn how to use Dreamhack's C language patching practice platform, designed for the Secure Coding Unit in C.
    [Exercise] Patch Chall: C Tutorial
    [Practice Together] Patch Chall: C Tutorial
    Patch Chall: C Tutorial
  2. 2
    0.0
    (0)
    Expert Only
    0.0
    (0)
    Expert Only
    Learn about security issues that can arise from misunderstanding or misusing integer types in C, and how to prevent them effectively.
    Integer
    Integer
    Quiz: C Secure Coding - Integer
    Quiz: C Secure Coding - Integer
    [Exercise] Patch Chall: C Integer
    [Practice Together] Patch Chall: C Integer
    Patch Chall: C Integer
  3. 3
    Expert Only
    0.0
    (0)
    Expert Only
    Learn about security issues related to variable declaration and initialization in C, and how to prevent them effectively.
    Declaration & Initialization
    Declarations and initialization
    Quiz: C Secure Coding - Declaration & Initialization
    Quiz: C Secure Coding - Declaration
    [Exercise] Patch Chall: C Declaration
    [Practice Together] Patch Chall: C Declaration
    Patch Chall: C Declaration
  4. 4
    0.0
    (0)
    Expert Only
    0.0
    (0)
    Expert Only
    Learn about issues that can arise when handling and converting floating-point data in C, and how to prevent them effectively.
    Floating Point
    Floating point
    Quiz: C Secure Coding - Floating-Point
    [Exercise] Patch Chall: C Floating Point
    [Practice Together] Patch Chall: C Floating-Point
    Patch Chall: C Floating-Point
  5. 5
    0.0
    (0)
    Expert Only
    0.0
    (0)
    Expert Only
    Learn about security issues related to expressions in C and how to prevent them effectively.
    Expression
    Expressions
    Quiz: C Secure Coding - Expression
    [Exercise] Patch Chall: C Uninitialized Memory
    [Practice Together] Patch Chall: C Uninitialized Memory
    Patch Chall: C Uninitialized Memory
  6. 6
    0.0
    (0)
    Expert Only
    0.0
    (0)
    Expert Only
    Learn about security issues that can arise when working with arrays in C and how to prevent them effectively.
    Array
    Array
    Quiz: C Secure Coding - Array
    [Exercise] Patch Chall: C Array
    [Practice Together] Patch Chall: C Array
    Patch Chall: C Array
  7. 7
    0.0
    (0)
    Expert Only
    0.0
    (0)
    Expert Only
    Explore security issues in C string handling and buffer overflow prevention.
    String
    string
    Quiz: C Secure Coding - String
    [Exercise] Patch Chall: C String
    [Practice Together] Patch Chall: C String
    Patch Chall: C String
  8. 8
    Expert Only
    0.0
    (0)
    Expert Only
    Learn about security vulnerabilities that can occur during dynamic memory management in C and how to prevent them effectively.
    Memory Management
    Memory management
    Quiz: C Secure Coding - Memory Management
    [Exercise] Patch Chall: C Memory Management
    [Practice Together] Patch Chall: C Memory Management
    Patch Chall: C Memory Management
    [Exercise] Patch Chall: C Null Dereference
    [Practice Together] Patch Chall: C Null Dereference
    Patch Chall: C Null Dereference
  9. 9
    Expert Only
    0.0
    (0)
    Expert Only
    Learn about security issues that can arise from input/output functions in C and how to prevent them effectively.
    IO (Input/Output)
    I/O
    Quiz: C Secure Coding - IO (Input/Output)
    [Exercise] Patch Chall: C IO (Input/Output)
    [Practice Together] Patch Chall: C IO (Input/Output)
    Patch Chall: C IO (Input/Output)
  10. 10
    0.0
    (0)
    Expert Only
    0.0
    (0)
    Expert Only
    Explore concurrency issues in C and learn methods to address them effectively.
    Concurrency
    Concurrency
    Quiz: C Secure Coding - Concurrency
    [Exercise] Patch Chall: C Concurrency
    [Practice Together] Patch Chall: C Concurrency
    Patch Chall: C Concurrency
  11. 11
    0.0
    (0)
    Expert Only
    0.0
    (0)
    Expert Only
    Learn about various security issues that can arise in C programming and how to prevent them effectively.
    Miscellaneous
    Other
    Quiz: C Secure Coding - Miscellaneous
    [Exercise] Patch Chall: C Miscellaneous
    [Practice Together] Patch Chall: C Miscellaneous
    Patch Chall: C Miscellaneous
Reviews
0.0 (0)
This Path is only available to
Expert User users.
0% Completed Total 0 completed
Lecture 0 /22
22
Wargame 0 /12
12
Quiz 0 /10
10
You can access locked objectives by upgrading your plan or purchasing the units separately.
The Lab is a practice and is not included in the overall progress.