На прошлой неделе на конференции Black Hat Asia исследователи из португальского университета Минью продемонстрировали основанную на тайминге атаку по стороннему каналу на микроконтроллер архитектуры ARMv8-M. Вендор заявил, что его технология изоляции TrustZone / Security Extension соответствует стандартам защиты MCU, в которых такие угрозы не предусмотрены.
Выявить риск тайминг-атаки для микроконтроллеров университетским исследователям помогли наработки по Spectre и Meltdown. Подобные угрозы, позволяющие получить секретные данные из памяти в обход защиты, всегда рассматривались в применении к серверам, компьютером либо мобильным устройствам. Как оказалось, они актуальны также для более простых систем — таких как MCU, входящие в состав всех IoT.
Разработанная португальцами атака использует разницу во времени, привносимую арбитром шины при параллельными запросах на считывание из одной и той же области памяти — например, от CPU и блока DMA. Мониторинг задержек в работе приложения-жертвы (в данном случае оно взаимодействовало с клавиатурой умного замка) позволил в итоге получить секретный ПИН-код..
О результатах исследования было доложено участникам проекта Trusted Firmware, STMicroelectronics (вендор MCU) и ARM. В двух первых случаях риск подтвердили, но вину возложили на затронутое приложение и ARM..
Чипмейкер отозвался публикацией, заявив, что TrustZone обеспечивает должный уровень защиты систем на базе Cortex-M. Атаку по стороннему каналу, возможность которой продемонстрировали исследователи, можно предотвратить, сняв зависимость потока управления программы и схем доступа к памяти от секретного состояния — эта мера безопасности уже широко применяется в криптобиблиотеках.