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.
Duration 21 hours
Course Outline
Introduction to Secure C and C++ Development
- Core principles of secure software development
- Typical security risks in C and C++ applications
- The link between programming errors and security vulnerabilities
- Industry standards and best practices for secure coding
Common C and C++ Programming Vulnerabilities
- Recognizing coding mistakes that introduce security risks
- Memory safety concerns in C and C++
- Vulnerability patterns and their potential impact
- Analysis of insecure code samples
Secure Programming Principles
- Implementing defense-in-depth strategies
- Crafting robust and maintainable code
- Reducing the attack surface
- Secure design principles for C and C++ applications
Input Validation and Data Handling
- The critical role of input validation
- Preventing the exploitation of malicious inputs
- Techniques for data sanitization
- Secure management of user and external data
Error Handling and Exception Management
- Risks posed by inadequate error handling
- Designing secure mechanisms for error and exception management
- Preventing information leakage via error messages
- Developing resilient applications
Memory Safety and Buffer Overflow Protection
- Memory management vulnerabilities
- Stack-based buffer overflows
- Heap-based buffer overflows
- Methods for detecting and preventing memory corruption
- Safe memory handling practices
Stack Protection and Runtime Security Features
- Stack overflow vulnerabilities
- Security protections provided by compilers
- Stack canaries and related 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
- Addressing type confusion issues
- Secure utilization of C++ language features
Secure Coding Tools and Techniques
- Leveraging static analysis tools to uncover vulnerabilities
- Code review methods for security assessment
- Approaches to automated security testing
- Integrating security checks into the development workflow
Secure Coding Standards and Best Practices
- Reviewing industry-specific secure coding guidelines
- Applying defensive programming techniques
- Embedding security within the software development lifecycle
- Maintaining secure and reliable C/C++ applications
Practical Secure Coding Workshop
- Analyzing examples of vulnerable C/C++ code
- Implementing security fixes and enhancements
- Testing code against common vulnerabilities
- Course summary and recommendations for secure development
Requirements
Fundamentals of C/C++
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