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 engineering
- Prevalent security threats in C and C++ environments
- Correlation between programming flaws and security vulnerabilities
- Industry-standard secure coding norms and best practices
Common C and C++ Programming Vulnerabilities
- Recognizing coding errors that create security risks
- Memory safety challenges in C and C++
- Analysis of vulnerability patterns and their consequences
- Examination of insecure code samples
Secure Programming Principles
- Implementation of defense-in-depth strategies
- Crafting robust and maintainable code structures
- Reduction of potential attack surfaces
- Application of secure design principles for C and C++ systems
Input Validation and Data Handling
- The critical role of input validation
- Strategies to prevent malicious input manipulation
- Techniques for effective data sanitization
- Secure processing of user-generated and external data
Error Handling and Exception Management
- Security risks posed by inadequate error handling
- Designing secure mechanisms for errors and exceptions
- Preventing information leakage via error messages
- Building highly resilient applications
Memory Safety and Buffer Overflow Protection
- Identifying memory management weaknesses
- Stack-based buffer overflow mechanisms
- Heap-based buffer overflow mechanisms
- Detection and prevention of memory corruption
- Best practices for safe memory management
Stack Protection and Runtime Security Features
- Nature of stack overflow vulnerabilities
- Security protections provided by compilers
- Role of stack canaries and related protection methods
- Address Space Layout Randomization (ASLR)
- Security features in modern operating systems
Advanced C++ Security Considerations
- Secure management of object lifecycles
- Mitigating use-after-free vulnerabilities
- Safe management of pointers and references
- Prevention of type confusion issues
- Secure utilization of C++ language capabilities
Secure Coding Tools and Techniques
- Utilizing static analysis tools to detect vulnerabilities
- Security-focused code review methodologies
- Approaches to automated security testing
- Integration of security checks into development pipelines
Secure Coding Standards and Best Practices
- Evaluation of industry secure coding guidelines
- Application of defensive programming techniques
- Embedding security throughout the software development lifecycle
- Maintenance of secure and reliable C/C++ applications
Practical Secure Coding Workshop
- Analysis of vulnerable C/C++ code snippets
- Implementation of security fixes and enhancements
- Testing code against common vulnerability types
- Course summary 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