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
- Grasping the core principles of secure software development
- Recognizing prevalent security risks in 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 concerns specific to C and C++
- Examining vulnerability patterns and their operational impact
- Analyzing examples of insecure code implementations
Secure Programming Principles
- Implementing defense-in-depth strategies
- Developing robust and maintainable code structures
- Reducing the potential attack surface
- Applying secure design principles to C and C++ applications
Input Validation and Data Handling
- Appreciating the critical role of input validation
- Mitigating the exploitation of malicious inputs
- Employing effective data sanitization methods
- Safely managing user-generated and external data
Error Handling and Exception Management
- Understanding the risks posed by inadequate error handling
- Designing secure mechanisms for error and exception management
- Preventing information leakage via error messages
- Building resilient application architectures
Memory Safety and Buffer Overflow Protection
- Comprehending memory management vulnerabilities
- Addressing stack-based buffer overflows
- Countering heap-based buffer overflows
- Detecting and preventing memory corruption
- Applying safe memory handling practices
Stack Protection and Runtime Security Features
- Understanding stack overflow vulnerabilities
- Leveraging compiler-based security protections
- Utilizing stack canaries and related protection mechanisms
- Implementing Address Space Layout Randomization (ASLR)
- Exploiting modern operating system security features
Advanced C++ Security Considerations
- Managing object lifecycles securely
- Preventing use-after-free vulnerabilities
- Safely managing pointers and references
- Avoiding type confusion issues
- Securely utilizing C++ language features
Secure Coding Tools and Techniques
- Employing static analysis tools to detect vulnerabilities
- Conducting code reviews for security assessment
- Implementing automated security testing strategies
- Integrating security checks into the development workflow
Secure Coding Standards and Best Practices
- Reviewing industry-standard secure coding guidelines
- Applying defensive programming techniques
- Embedding security throughout 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
- Reviewing course concepts and recommending secure development practices
Requirements
Foundational knowledge 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