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
- Core principles of secure software development
- Prevalent security risks in C and C++ applications
- The link between programming errors and security vulnerabilities
- Secure coding standards and industry best practices
Common C and C++ Programming Vulnerabilities
- Identifying coding errors that introduce security risks
- Memory safety challenges in C and C++
- Analysis of vulnerability patterns and their implications
- Reviewing examples of insecure code
Secure Programming Principles
- Implementing defence-in-depth strategies
- Developing robust and maintainable code
- Reducing attack surfaces
- Secure design methodologies for C and C++ applications
Input Validation and Data Handling
- The critical role of input validation
- Mitigating the exploitation of malicious input
- Techniques for data sanitization
- Secure management of user-generated and external data
Error Handling and Exception Management
- Risks posed by inadequate error handling
- Designing secure error and exception management mechanisms
- Preventing information leakage via error messages
- Building resilient applications
Memory Safety and Buffer Overflow Protection
- Understanding memory management flaws
- Stack-based buffer overflows
- Heap-based buffer overflows
- Identifying and preventing memory corruption
- Safe memory management practices
Stack Protection and Runtime Security Features
- Analyzing stack overflow vulnerabilities
- Compiler-driven security protections
- Stack canaries and associated protection mechanisms
- Address Space Layout Randomization (ASLR)
- Security features in modern operating systems
Advanced C++ Security Considerations
- Secure management of object lifecycles
- Preventing use-after-free vulnerabilities
- Safe handling of pointers and references
- Avoiding type confusion issues
- Secure utilization of C++ language features
Secure Coding Tools and Techniques
- Leveraging static analysis tools for vulnerability detection
- Security-focused code review techniques
- Approaches to automated security testing
- Integrating security checks into development workflows
Secure Coding Standards and Best Practices
- Reviewing industry secure coding guidelines
- Applying defensive programming methodologies
- Embedding security into the software development lifecycle
- Maintaining secure and reliable C/C++ applications
Practical Secure Coding Workshop
- Analyzing vulnerable C/C++ code samples
- Implementing security fixes and enhancements
- Testing code against common vulnerabilities
- Course recap and secure development recommendations
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