Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Introduction to Secure C and C++ Development
- Grasping the core principles of secure software development
- Recognizing common security risks within C and C++ applications
- Exploring the link between programming errors and security vulnerabilities
- Adhering to secure coding standards and industry best practices
Common C and C++ Programming Vulnerabilities
- Identifying coding errors that introduce security risks
- Addressing memory safety challenges in C and C++
- Evaluating vulnerability patterns and their potential impact
- Analyzing examples of insecure code
Secure Programming Principles
- Implementing defence-in-depth strategies
- Writing code that is both robust and maintainable
- Reducing the attack surface of your applications
- Applying secure design principles to C and C++ projects
Input Validation and Data Handling
- Understanding the critical role of input validation
- Mitigating risks from malicious input exploitation
- Employing effective data sanitisation techniques
- Ensuring secure handling of user-generated and external data
Error Handling and Exception Management
- Mitigating risks associated with flawed error handling
- Designing secure mechanisms for errors and exceptions
- Preventing information leakage via error messages
- Building resilient and fault-tolerant applications
Memory Safety and Buffer Overflow Protection
- Comprehending memory management vulnerabilities
- Understanding stack-based buffer overflows
- Understanding heap-based buffer overflows
- Detecting and preventing memory corruption
- Utilising safe memory handling techniques
Stack Protection and Runtime Security Features
- Understanding stack overflow vulnerabilities
- Leveraging compiler-based security protections
- Implementing stack canaries and related protection mechanisms
- Utilising Address Space Layout Randomization (ASLR)
- Incorporating modern operating system security features
Advanced C++ Security Considerations
- Managing secure object lifecycles
- Preventing use-after-free vulnerabilities
- Safely managing pointers and references
- Avoiding type confusion issues
- Utilising C++ language features securely
Secure Coding Tools and Techniques
- Using static analysis tools to uncover vulnerabilities
- Applying code review techniques for security assessment
- Adopting automated security testing approaches
- Integrating security checks into your development workflow
Secure Coding Standards and Best Practices
- Reviewing industry-standard secure coding guidelines
- Applying defensive programming techniques
- Embedding security into the software development lifecycle
- Maintaining secure and reliable C/C++ applications
Practical Secure Coding Workshop
- Analyzing vulnerable C/C++ code examples
- Applying security fixes and enhancements
- Testing code against common vulnerabilities
- Course review and recommendations for secure development
Requirements
Foundational knowledge of C/C++
21 Hours
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