Course description
Secure Coding in C and C++ for Automotive
Your application written in C and C++ works as intended, so you are done, right? But did you consider feeding in incorrect values? 16Gbs of data? A null? An apostrophe? Negative numbers, or specifically -232? Because that’s what the bad guys will do – and the list is far from complete.
Handling security needs a healthy level of paranoia, and this is what this course provides: a strong emotional engagement by lots of hands on labs and stories from real life, all to substantially improve code hygiene. Mistakes, consequences and best practices are our blood, sweat and tears.
All this is put in the context of C and C++, and extended by core programming issues, discussing security pitfalls of these languages.
So that you are prepared for the forces of the dark side.
So that nothing unexpected happens.
Nothing.
This training is available for corporate teams and can be offered virtually to suit your company's needs. Get in touch to learn more!
Do you work at this organisation and want to update this page?
Is there out-of-date information about your organisation or courses published here? Fill out this form to get in touch with us.
Upcoming start dates
Suitability - Who should attend?
Audience
C/C++ developers
Preparedness
General C/C++ development
Objective list
- Getting familiar with essential cyber security concepts
- Learning about security specialties of the automotive sector
- Handling security challenges in your C and C++ code
- Identify vulnerabilities and their consequences
- Learn the security best practices in C and C++
- Understanding security testing methodology and approaches
- Getting familiar with common security testing techniques and tools
Training Course Content
Table of contents
Day 1
> Cyber security basics
Consequences of insecure software
Categorization of bugs
Coding standards in automotive
Cyber security in the automotive sector
> Buffer overflow
Assembly basics and calling conventions
Memory management vulnerabilities
Best practices and some typical mistakes
Day 2
> Memory management hardening
Securing the toolchain
Runtime protections
> Common software security weaknesses
Security features
Errors
Day 3
> Common software security weaknesses
Input validation
Time and state
Day 4
> Common software security weaknesses
Code quality
> Security testing
Security testing methodology
Security testing techniques and tools
> Wrap up
Secure coding principles
And now what?
See full Table of Contents in the downloadable brochure.