CRA compliance with Zephyr OS
3 days · Implementing EN 18031 and Cyber Resilience Act requirements
This training introduces the main hardware and software vulnerabilities of embedded systems and helps you prepare your defense, with an introduction to cybersecurity standards, cryptography and the Secure by Design approach. Hands-on exercises cover the FOTA mechanism for remote software updates and advanced security with ARM TrustZone.

Program
Day 1: Introduction to embedded systems cybersecurity
Module 1: State of embedded systems cybersecurity
- Top 10 most common threats
- Why secure your embedded system
- Maturity level of current embedded products regarding security
- Security of MCU-based vs MPU-based systems
- Technical constraints tied to securing embedded products
Module 2: Taxonomy of attacks against MCU-based embedded systems
- Preliminary analysis of a product: public vulnerability research, hardware and software reverse-engineering
- Vulnerability discovery: passive methods (network sniffing, probing, side-channel) and active methods (fuzzing interfaces and debug ports)
- Exploiting vulnerabilities: RF attacks with SDR (GPS spoofing, RF repeater, GSM security, etc.), network attacks, software attacks (buffer/int overflow), side-channel attacks with and without physical access, electrical glitch attacks
Case study: security analysis of ANSSI's Wookey encryption key
Module 3: Hands-on lab (setting up a FOTA mechanism and secure boot)
- Introduction to MCUboot: update modes, anti-rollback, firmware encryption
- Configuring and deploying MCUboot with Zephyr OS
Lab: configuring and deploying MCUboot with Zephyr OS
Day 2: Preparing your defense
Module 4: Risk analysis and regulatory framework
- Regulatory framework (EN 18031, Cyber Resilience Act, CSPN certification…)
- Defining your security problem: assets, threats, attacker model, assumptions
- Analyzing risk in a simple way
- Assessing the severity of an attack (ANSSI CSPN method)
Lab: drafting a security target outline for asset tracking, a smart meter or a connected camera
Module 5: Cryptography fundamentals
- Symmetric cryptography, authenticated or not: AES and its modes of operation
- Public-key cryptography and PKI: RSA and ECDSA, key negotiation, introduction to the PKI concept
- Hash and MAC algorithms: SHA, HMAC, CMAC
- Cryptographic key diversification and randomness generation
Module 6: Hands-on lab (setting up a TLS connection with MbedTLS and Zephyr OS)
- Generating a PKI infrastructure with OpenSSL
- Developing a TLS-secured echo client
- Developing an mTLS-secured echo client
Day 3: The Secure by Design approach
Module 7: Developing securely
- Best practices
- Development process
Lab: vulnerability research, code hardening, unprivileged processes with Zephyr OS
Module 8: Generic security mechanisms
- Security lifecycle
- Attestation
- Secure boot
- Secure update
- Secure communications
- Logical partitioning
- Binding
Module 9: Advanced security with ARM TrustZone
- Focus on the TrustZone security extension for Cortex M23 and M33
- General introduction to TF-M
- Security services offered by TF-M
- The challenge of provisioning keys at scale
Lab: implementing TF-M with Zephyr OS
