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++ ecosystems
- Correlation between programming errors and security flaws
- Adherence to secure coding standards and industry best practices
Common C and C++ Programming Vulnerabilities
- Recognising coding errors that compromise security
- Addressing memory safety concerns in C and C++
- Examining vulnerability patterns and their operational impact
- Critical analysis of insecure code samples
Secure Programming Principles
- Implementing defence-in-depth strategies
- Crafting robust and maintainable codebases
- Reducing the potential attack surface
- Applying secure design methodologies to C and C++ applications
Input Validation and Data Handling
- The critical role of input validation in security
- Safeguarding against malicious input manipulation
- Techniques for effective data sanitisation
- Secure processing of user-generated and external data
Error Handling and Exception Management
- Security risks arising from flawed error handling
- Architecting secure error and exception management systems
- Preventing data leakage via error messages
- Ensuring application resilience under fault conditions
Memory Safety and Buffer Overflow Protection
- Understanding vulnerabilities in memory management
- Stack-based buffer overflow mechanisms
- Heap-based buffer overflow mechanisms
- Strategies for detecting and preventing memory corruption
- Best practices for safe memory manipulation
Stack Protection and Runtime Security Features
- Understanding the impact of stack overflow vulnerabilities
- Leveraging compiler-driven security protections
- Utilising stack canaries and defensive mechanisms
- Address Space Layout Randomization (ASLR) implementation
- Exploiting modern operating system security features
Advanced C++ Security Considerations
- Managing object lifecycles securely
- Mitigating use-after-free vulnerabilities
- Safe management of pointers and references
- Preventing type confusion issues
- Securing the application of C++ language features
Secure Coding Tools and Techniques
- Employing static analysis tools for vulnerability detection
- Conducting security-focused code reviews
- Implementing automated security testing methodologies
- Embedding security checks within development workflows
Secure Coding Standards and Best Practices
- Evaluating industry-standard secure coding guidelines
- Applying defensive programming methodologies
- Integrating security into the software development lifecycle
- Maintaining the integrity and reliability of C/C++ applications
Practical Secure Coding Workshop
- Analyzing vulnerable C/C++ code snippets
- Implementing security fixes and enhancements
- Testing code resilience against common vulnerabilities
- Course conclusion 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