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
- Identifying prevalent 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
- Recognizing frequent coding mistakes that pose security threats
- Addressing memory safety challenges specific to C and C++
- Examining vulnerability patterns and their potential impact
- Analyzing examples of insecure code for educational purposes
Secure Programming Principles
- Implementing defence-in-depth strategies
- Creating code that is both robust and maintainable
- Reducing the attack surface of applications
- Applying secure design principles tailored to C and C++ environments
Input Validation and Data Handling
- Recognizing the critical role of input validation
- Safeguarding against the exploitation of malicious input
- Employing effective data sanitization methods
- Ensuring secure management of user-provided and external data
Error Handling and Exception Management
- Assessing the risks linked to inadequate error handling
- Constructing secure mechanisms for error and exception management
- Preventing sensitive information leakage via error messages
- Developing applications with high resilience
Memory Safety and Buffer Overflow Protection
- Comprehending vulnerabilities in memory management
- Addressing stack-based buffer overflows
- Mitigating heap-based buffer overflows
- Identifying and preventing memory corruption issues
- Utilizing safe memory handling practices
Stack Protection and Runtime Security Features
- Understanding the mechanics of stack overflow vulnerabilities
- Leveraging compiler-based security protections
- Implementing stack canaries and related protection mechanisms
- Utilizing Address Space Layout Randomization (ASLR)
- Incorporating modern operating system security features
Advanced C++ Security Considerations
- Managing object lifecycles securely
- Preventing use-after-free vulnerabilities
- Handling pointers and references with caution
- Eliminating type confusion issues
- Applying C++ language features in a secure manner
Secure Coding Tools and Techniques
- Using static analysis tools to detect vulnerabilities
- Employing code review techniques for security evaluation
- Adopting automated security testing strategies
- Integrating security checks into development workflows
Secure Coding Standards and Best Practices
- Reviewing industry-recognized secure coding guidelines
- Applying defensive programming techniques
- Embedding security within the software development lifecycle
- Ensuring the security and reliability of C/C++ applications
Practical Secure Coding Workshop
- Analyzing vulnerable C/C++ code samples
- Implementing security fixes and enhancements
- Testing code resilience against common vulnerabilities
- Summarizing course insights and secure development recommendations
Requirements
Fundamental 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