Современные умные устройства, объединяющие высокотехнологичные компоненты и функциональность, становятся неотъемлемой частью повседневной жизни. Одним из таких устройств является Thermomix TM5 — многофункциональный кухонный прибор, который сочетает в себе инновационные возможности для приготовления пищи и связь с цифровыми сервисами. Однако, как и любая технология, Thermomix TM5 подвержен вопросам безопасности и уязвимостям, которые могут быть использованы злоумышленниками для компрометации устройства, а впоследствии и данных пользователя. В данном обзоре рассматриваются ключевые аспекты исследований безопасности Thermomix TM5, раскрываются найденные уязвимости и методы их эксплуатации, а также анализируются риски и рекомендации по защите устройства. Начинать стоит с технической архитектуры устройства.
Thermomix TM5 основывается на системе с несколькими основными электронными платами. Главная плата отвечает за пользовательский интерфейс и управление всеми функциональными блоками, включая силовую плату, которая управляет мотором и нагревательными элементами. Центральным процессором выступает i.MX28 SoC, построенный на ARM926EJ-S ядре, а память представлена NAND Flash и DDR2 SDRAM. Особенность технологии обработки NAND Flash заключается в использовании специального контроллера и драйвера с интегрированной системой контроля целостности данных (GPMIC), что позволяет надежно хранить и считывать энергонезависимые данные устройства.
Одним из важнейших элементов системы являются «рецептные чипы» или «cook sticks» — небольшие магнитные модули, содержащие библиотеки рецептов и подключающиеся к устройству для расширения функционала готовки. Анализ этих модулей с использованием инструментов для работы с NAND Flash и USB показал, что данные на «cook sticks» зашифрованы с помощью AES-128 CBC. Ключи шифрования можно извлечь из файлов на основном NAND Flash, в частности из файла /opt/cookey.txt, в котором хранится ключ шифрования. Наличие аппаратного акселератора криптографических операций (DCP — Data Co-Processor) значительно упрощает обработку криптографических алгоритмов на аппаратном уровне, но при этом открывает возможность атак при наличии доступа к ключам.
Многие критически важные компоненты устройства связаны с процессом обновления прошивки. Формат обновления представляет собой бинарный пакет, разделенный на заголовочную и основную области. В заголовочной области содержатся метаданные, а в основной — блоки с реальным содержимым прошивки, которые подписываются криптографически. В прошивках Thermomix TM5 применялась схема шифрования AES-EAX, которая сочетает шифрование AES в режиме CTR с механизмом аутентификации OMAC. Несмотря на криптографическую защиту, была выявлена уязвимость, связанная с тем, что nonce (число, используемое один раз) не включен в подлинность сообщения, то есть не подписан.
Это позволило злоумышленнику манипулировать nonce для изменения расшифровываемого содержимого первой блокировки данных, что в итоге привело к возможности обхода защиты от даунгрейда прошивки. Даунгрейд в контексте данного устройства представляет собой процесс понижения версии установленного программного обеспечения, что потенциально позволяет запускать старые версии с известными уязвимостями. Уникальность атак заключалась в том, что злоумышленник мог путем замены отдельных частей прошивки создать пакет, который выглядел легитимным и содержал подписанные компоненты, однако включал в себя устаревшую корневую файловую систему, позволяя возвратиться к уязвимым вариантам ПО. Из-за слабой криптографической связи между версиями и разделами прошивки устройство Thermomix TM5 не могло проверить целостность и последовательность версий, что стало причины данной проблемы. Для осуществления атаки требовались наличие ключей шифрования, которые удалось извлечь из бинарного файла проверочной программы checkimg и других компонентов устройства.
Это позволило подобрать правильный nonce через перебор и вычислить подделанный ключ для расшифровки и подстройки даты в версии прошивки, таким образом обходя защитные механизмы. В совокупности с этим, уязвимый загрузчик системы не проверял целостность или цифровые подписи корневой файловой системы, что открывало двери для внедрения злонамеренного кода и получения постоянного доступа на устройство. Технологически аппаратный загрузчик, работающий на i.MX28, загружает подписанный загрузочный образ, содержащий ядро Linux и модуль загрузки, однако проверка подписи распространяется не на весь корневой файл, что вызывает потенциальную ошибку безопасности. Отсутствие систем контроля, таких как dm-verity или подобные им технологии защиты целостности загрузки, способствует возможности модификации файловой системы с сохранением работоспособности устройства.
Таким образом, атака с использованием комбинирования даунгрейда и модификации корневой файловой системы стала возможной. Интересно отметить, что исследователи создали аппаратные эмуляторы кастомных модулей cook sticks и cook key, что позволило воссоздать среду устройств и провести тестирование и атаки без риска повредить исходное оборудование. Благодаря открытым исходникам и патчам драйверов, а также изучению работы протоколов USB и последовательного обмена данными с модулями, углубленный реверс инжиниринг раскрыл подробности построения системы защиты и коммуникаций. Практическая опасность обнаруженных уязвимостей напрямую связана с физическим доступом к устройству, так как для извлечения NAND памяти, доступа к командной строке и проведения атаки необходимы специальные инструменты и знания. Более того, отсутствуют компоненты, такие как камера или микрофон, которые могли бы быть использованы для сбора персональной информации пользователя, вследствие чего риски утечки данных ограничены контекстом функционала устройства и возможными атаками на целостность прошивки.
Проведенный аудит и анализ позволили понять, что производителя Thermomix TM5 вовремя получили информацию о проблемах с безопасностью, и начиная с версии прошивки 2.14 были внедрены механизмы защиты, исключающие возможность даунгрейда путем связывания криптографических подписей компонентов и их версии. Это продемонстрировало важность своевременного обновления устройств и использования актуальных версий ПО, содержащих исправления и улучшения безопасности. Основные рекомендации для пользователей и администраторов устройств умной кухни заключаются в своевременном обновлении программного обеспечения, ограничении физического доступа к оборудованию, а также внедрении дополнительных средств защиты, таких как аппаратные ключи безопасности и мониторинг целостности файловой системы. Для производителей устройств важно интегрировать современные протоколы безопасной загрузки, надежную криптографическую проверку всех компонентов системы, а также предусмотреть комплексные стратегии реагирования на инциденты безопасности.
В итоге, изучение уязвимостей Thermomix TM5 служит примером, как интеграция сложных технологий в бытовые устройства требует не только инновационных инженерных решений, но и продуманной стратегии безопасности. Резкое возрастание числа сетевых и IoT-устройств в современном мире подчеркивает необходимость комплексного подхода к защите на всех уровнях и непрерывного их совершенствования во избежание негативных последствий для конечных пользователей и предпринимателей. Модель безопасности умной кухни Thermomix TM5 стала важным этапом в развитии понимания риска и мер борьбы с уязвимостями в подобных системах, как для исследователей, так и для отрасли в целом.