
UM2262 Rev 6
23/94
UM2262
Protection measures and security strategy
93
Protections against outer attacks
Outer attacks refer to attacks triggered by external tools such as debuggers or probes,
trying to access the device. In the SBSFU application example, RDP, tamper, DAP and
IWDG protections are used to protect product against outer attacks:
•
RDP
(Read Protection): Read Protection Level 2 is mandatory to achieve the highest
level of protection and to implement a Root of Trust:
–
External access via the JTAG HW interface to RAM and Flash is forbidden. This
prevents attacks aiming to change SBSFU code and therefore mining the Root of
Trust.
–
Option bytes cannot be changed. This means that other protections such as WRP
and PCROP cannot be changed anymore.
Caution
- RDP level 1 is not proposed for the following reasons:
1. Secure Boot / Root of Trust (single entry point and immutable code) cannot be
ensured, because Option bytes (WRP) can be modified in RDP L1.
2. Device internal flash can be fully reprogrammed (after flash mass erase via RDP L0
regression) with a new FW without any security.
3. Secrets in RAM memory protected by firewall can be accessed by attaching the
debugger via the JTAG HW interface on a system reset.
In case JTAG HW interface access is not possible at customer product, and in case the
customer uses a trusted and reliable user application code, then the above-highlighted
risks are not valid.
•
Tamper
: the anti-tamper protection is used to detect physical tampering actions on the
device and to take related counter measures. In case of tampering detection, the
SBSFU application example forces a reboot.
•
DAP
(Debug Access Port): the DAP protection consists in de-activating the DAP
(Debug Access Port). Once de-activated, JTAG pins are no longer connected to the
STM32 internal bus. DAP is automatically disabled with RDP Level 2.
•
IWDG
(Independent Watchdog): IWDG is a free-running down-counter. Once running,
it cannot be stopped. It must be refreshed periodically before it causes a reset. This
mechanism allows the control of SBSFU execution duration.
Protections against inner attacks
Inner attacks refer to attacks triggered by code running in the STM32. Attacks may be due
to either malicious firmware exploiting bugs or security breaches, or unwanted operations.
In th SBSFU application example, WRP, firewall, PCROP, and MPU protections preserve
the product from inner attacks:
•
FWALL
(firewall): the firewall is configured to protect the code, volatile data and non-
volatile data. Protected code is accessible through a single entry point (the call gate
mechanism is described in
). Any attempt to jump and try to execute any of
the functions included in the code section without passing through the entry point
generates a system reset.
In the KMS example, keys and cryptographic services are executed inside the isolated
environment under firewall protection.