mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
system/security: Memprot bypassing mitigation
Check Memprot lock bit(s) during the system startup, abort/reset on any Memprot parts found locked during this phase. There is no legal reason to disallow the Memprot configuration by the system, so it's either a critical bug in the application or an malicious attempt to bypass the system security. Error message is printed before digital system reset. Closes IDF-2700
This commit is contained in:
parent
2ef16a3861
commit
1e58eb6928
@ -480,6 +480,12 @@ void IRAM_ATTR call_start_cpu0(void)
|
||||
esp_cache_err_int_init();
|
||||
|
||||
#if CONFIG_ESP_SYSTEM_MEMPROT_FEATURE
|
||||
// Memprot cannot be locked during OS startup as the lock-on prevents any PMS changes until a next reboot
|
||||
// If such a situation appears, it is likely an malicious attempt to bypass the system safety setup -> print error & reset
|
||||
if ( esp_memprot_is_locked_any() ) {
|
||||
ESP_EARLY_LOGE(TAG, "Memprot feature locked after the system reset! Potential safety corruption, rebooting.");
|
||||
esp_restart_noos_dig();
|
||||
}
|
||||
#if CONFIG_ESP_SYSTEM_MEMPROT_FEATURE_LOCK
|
||||
esp_memprot_set_prot(true, true, NULL);
|
||||
#else
|
||||
|
Loading…
x
Reference in New Issue
Block a user