Reverse Engineering
Riscure Academy - Classroom TrainingIn this course, we cover a wide range of topics, from instruction set architecture to dynamic analysis techniques, ensuring you have the tools to succeed in the field of cybersecurity.
Duration
3 courses
6-8 weeks
20+ hours self-paced eLearning and practical exercise
4.5 hours Live Mentoring
Certificate
80% or higher on final assessment
Team report (pre vs post assessment)
Interactive
Exercises
Assignments
Quizzes
Live mentoring
Scalable
Self-paced eLearning
Scheduled live mentoring
Spaced for efficiency & effectiveness
Scale to multiple groups
After this program participants will be able to
Security Engineering
Recognize security assets in a TOE
Understand how to apply the attack tree method
Rate and select attack paths
Describe main methods of defence
Embedded Systems
Use open source tooling to identify PCB interfaces
Determine relevance of a component for security
Understand relevance of a component to an attacker
Create and apply countermeasures
Defence & Countermeasures
Evaluate required security properties of an asset
Understand modern threats: implementation attacks, SCA, FI
Understand the role of team work in implementation of security primitives
Understand how modern countermeasures can protect against modern threats
Reverse Engineering
No specific background required
Engineering / Security background preferred
Relevant for anyone working with embedded systems, from decision-makers to engineers
Understand security engineering principles
Understand an embedded system holistically
Setup protections against attacks
Introduction and Static Analysis
Information gathering and essential knowledge
- Instruction set architecture
- System design
- Functional analysis
- Firmware images
- Initial file analysis
Loading binaries and disassembly navigation
- Loading binaries
- IDA Pro auto analysis
- IDA Pro workspace
- Views: disassembly, hex and other
- Cross reference and navigation
- Configuring the IDA Pro workspace
- Saving the database
Disassembly manipulation
- Naming
- Element types
- Function properties
- Adding function prototypes
- Adding comments
- ARM architecture introduction
Static analysis I. High level code mapping
- Functions and calling conventions
- Basic code constructs
Static analysis II. High level data structures
- Arrays
- C-like structures
- Linked lists and related structures
- C++ objects
- Identifying data types
Work Reuse and Dynamic Analysis
Type, structure and constant information
- Adding types to variables
- IDA’s structure handling
- Identifying standard constants
- Importing structures
Signatures
- Library functions
- FLIRT signatures
- Applying and creating FLIRT signatures
IDA Pro plugins and scripts
- IDA extension capabilities
- Useful plugins
- Plugins installation and script execution
Dynamic analysis: Debugging and emulation
- Basic debugging techniques
- The GNU debugger
- Scripting gdb
- Other debuggers
- Dynamic analysis techniques
- Emulation vs debugging
Typical software vulnerabilities
- Command injection
- Memory corruption
- Format strings
- Arithmetic overflows
Hands-on RE and Exploitation
- Application of reverse engineering techniques
- War-game with multiple ARM challenges
Lead developer
Name Here
Actionable and indispensable knowledge of security in Embedded Systems and IoT devices. Training on hardware and software security in a classroom setting, online or hosted in your own knowledge program.
What people say
“Very interesting learning approach and material across different aspects of state-of-the-art SoC development with Security in mind. I really want to thank Riscure for offering such good trainings, and the their trainers who make amazing use of their skills, experiences and kindness to easily communicate complex concepts to the audience.”
– Qualcomm
Get Started Today
Don’t let your organization’s embedded systems become an easy target. Invest in the security and success of your business by partnering with Riscure Academy. Contact us today to discuss your training needs and explore our approach. Together, we’ll empower your team to secure your organization’s future.
Frequently asked questions
Do you do individual training?
Individual training is available for self-enrollers within enterprises, but we do not training for individuals outside of organizations. For individuals we recommend Self-Paced or Open training. If you are unsure, please get in touch by filling in the form below.
What is the minimum group size for your expert-led training program?
Are your programs delivered online or as classroom ?
customer's location. Our online programs blend self-paced e-learning, exercises, assessments, and in certain cases expert-sessions (like Q&A webinars or Group Exercises) with Riscure experts.
When can we start with the training/ what do the training schedules look like?
We do not have pre-defined dates for our training sessions. Instead, we aim to accommodate your preferred start time and schedule the spacing of training and relevant sessions accordingly. To ensure a seamless scheduling process, please provide advance notice of 3-4 weeks for our online group programs and 6-8 weeks for classroom programs, as this allows us to secure our trainers' availability. For online training by individuals (self-paced) any enrollment will be facilitated within days or weeks, depending on the level of integration with the customer training platform or HR system. For Open Training schedules, please, contact us by filling in the form below.
Does customer have access to the training materials after the program?
For expert-led group training, including online/hybrid and classroom formats, access to relevant training materials remains available after the training period. The formal training schedule with deadlines is coordinated between Riscure and the customer.