Research Article
TEE-Watchdog: Mitigating Unauthorized Activities within Trusted Execution Environments in ARM-Based Low-Power IoT Devices
Algorithm 4
Creating a log entry of access violation into log file
| | Input: ⊳ Application ID causing the access violation | | | Output: | | | Procedure Log_Violation(ActiveApp) | | | | | | Initialize ⊳ A datastructure representing Log File entry is initialized with null values | | | if bit 7 of MMFSR = = 1 then ⊳ The MMFAR holds a valid fault address | | | ⊳ Violating application | | | MMFAR ⊳ Violated peripheral address | | | if bit 0 of MMFSR = = 1 then | | | XN ⊳ Code execution attempt | | | else if bit 1 of MMFSR = = 1 then | | | RW ⊳ Read or write attempt | | | else if bit 3 ofMMFSR = = 1 then | | | ER ⊳ Access violation due to exception return | | | else if bit 4 ofMMFSR = = 1 then | | | EE ⊳ Access violation due to exception entry | | | else | | | UE ⊳ Unknown fault | | | end | | | Write to Secure Storage | | | ⊳ The procedure is successful | | | else | | | ; | | | ⊳ MMFAR does not contain a valid address and is not added to Log File | | | end | | | return | | | End Procedure |
|