Course Outline
Introduction to Secure C and C++ Development
- Understanding principles of secure software development
- Common security risks in C and C++ applications
- The relationship between programming errors and security vulnerabilities
- Secure coding standards and best practices
Common C and C++ Programming Vulnerabilities
- Identifying common coding mistakes that introduce security risks
- Memory safety issues in C and C++
- Vulnerability patterns and their impact
- Analysing insecure code examples
Secure Programming Principles
- Applying defence-in-depth techniques
- Writing robust and maintainable code
- Minimising attack surfaces
- Secure design principles for C and C++ applications
Input Validation and Data Handling
- Understanding the importance of input validation
- Preventing malicious input exploitation
- Data sanitisation techniques
- Secure handling of user and external data
Error Handling and Exception Management
- Risks associated with improper error handling
- Designing secure error and exception handling mechanisms
- Avoiding information leakage through errors
- Creating resilient applications
Memory Safety and Buffer Overflow Protection
- Understanding memory management vulnerabilities
- Stack-based buffer overflows
- Heap-based buffer overflows
- Detecting and preventing memory corruption
- Safe memory handling techniques
Stack Protection and Runtime Security Features
- Understanding stack overflow vulnerabilities
- Compiler-based security protections
- Stack canaries and protection mechanisms
- Address Space Layout Randomization (ASLR)
- Modern operating system security features
Advanced C++ Security Considerations
- Secure object lifecycle management
- Preventing use-after-free vulnerabilities
- Managing pointers and references safely
- Avoiding type confusion issues
- Secure use of C++ language features
Secure Coding Tools and Techniques
- Using static analysis tools to identify vulnerabilities
- Code review techniques for security assessment
- Automated security testing approaches
- Integrating security checks into development workflows
Secure Coding Standards and Best Practices
- Reviewing industry secure coding guidelines
- Applying defensive programming techniques
- Building security into the software development lifecycle
- Maintaining secure and reliable C/C++ applications
Practical Secure Coding Workshop
- Analysing vulnerable C/C++ code examples
- Applying security fixes and improvements
- Testing code against common vulnerabilities
- Course review and secure development recommendations
Requirements
Basic knowledge of C/C++
Custom Corporate Training
Training solutions designed exclusively for businesses.
- Customized Content: We adapt the syllabus and practical exercises to the real goals and needs of your project.
- Flexible Schedule: Dates and times adapted to your team's agenda.
- Format: Online (live), In-company (at your offices), or Hybrid.
Price per private group, online live training, starting from 4800 € + VAT*
Contact us for an exact quote and to hear our latest promotions
Testimonials (6)
Experience sharing, it's teacher's know-how and valuable.
Carey Fan - Logitech
Course - C/C++ Secure Coding
the balance between lectures and practice, the rhythm, the trainer knowledge and pedagogic skill
Armando Pinto - EID
Course - C/C++ Secure Coding
The trainer provided up-to-date information and valuable references and tools.
Jose Vicente - EID
Course - C/C++ Secure Coding
to get a lot of good info about the course subject
Paulo Pereira - EID
Course - C/C++ Secure Coding
The coach solid knowledge and the experience, nice slides, good examples.
Celso Almeida - EID
Course - C/C++ Secure Coding
General course information