D2
Администратор
- Регистрация
- 19 Фев 2025
- Сообщения
- 4,380
- Реакции
- 0
Команда The Binarly Research Team представляет первое публичное исследование по Cross-Silicon Exploitation в экосистеме UEFI: от x86 до ARM.
Традиционно, раскрытия уязвимостей в прошивках UEFI были были преймущественно сфокусированны на х86 экосистемах, в частности - на устр-вах от Intel и AMD. Тем не менее с ростом рынка ARM устр-в возникло стремление к расширению и унификации, которое привело к созданию UEFI прошивок для ARM. Это неизбежно привело к первому публичному раскрытию в истории UEFI информации, относящейся к спецификации экосистем ARM устр-в. В январе 2023 BINARLY обнародовали несколько уязвимостей, влияющих на референс-код Qualcomm, а так же и на других производителей устройств и IBV: Multiple Vulnerabilities in Qualcomm and Lenovo ARM based Devices
Это было результатом исследования, целью которого было определить - станут ли такие же атаки / классы багов, представленные на x86 устр-вах влиять на ARM девайсы. Наша работа включала в себя реконструкцию boot flow на ARM устр-вах с UEFI прошивкой, а так же изучить средства защиты, и способы смягчения последствий атаки, в сравнении с х86 системами. Мы обсуждаем общий охват и недостатки средств безопасности, а так же достижение arbitrary code execution во время загрузки, как результат эксплойтации уязвимости в фазе DXE с помощью техники ROP (для обхода DEP).
В прошлом мае, на OffensiveCon команда The Binarly Research охватила различные аспекты унификации разработки прошивок с такими фреймворками, как UEFI и последствия их безопасности, с точки зрения атаки/защиты. В этом блоге мы подробно погрузимся в основные идеи, возникшие в ходе этого исследовательского проекта.
запись разговора
слайды доступны
линк
Помимо перехода на новую архитектуру CPU, самое явное отличие была - имплементация изолированной среды исполнения для SMM-подобных и runtime services внутри TrustZone ARM. В конце концов, каждое устр-во будет иметь bootROM (не обновляемый) SoC-specific firmware, которое типично для процессоров ARM. Системная прошивка будет состоять из 3-ех компонентов: UEFI прошивка для загрузочной среды, hypervisor и прошивку TrustZone, которая обычно построенна на ARM Trusted Firmware (TF) и Trusted Execution Environment (TEE), и дополненна большим кол-вом кода для поддержки функциональности UEFI management mode (MM) и других раличных функций, включая функции безопасности.
Держа в уме то, как идеальный концепт может отличаться от реальности, мы решили проверить рельную UEFI прошивку на реальном ARM устройстве.
Единственным недостатком этого устройства является то, что имеет трудности с тем, что бы быть Linux-Friendly, исходя из этого мы решили проводить наши эксперименты с Windows, и с UEFIShell (используя наши собственные EFI драйверы и приложения).
До проведения любых экспериментов - лучше всего заиметь образ UEFI пршивки для текущего устройства, с целью изучить её на предмет уязвимостей, изучить boot flow, проверит статические конфигурации, и.т.д..
В целом - есть 3 способа это сделать:
⦁ Скачать
Традиционно, раскрытия уязвимостей в прошивках UEFI были были преймущественно сфокусированны на х86 экосистемах, в частности - на устр-вах от Intel и AMD. Тем не менее с ростом рынка ARM устр-в возникло стремление к расширению и унификации, которое привело к созданию UEFI прошивок для ARM. Это неизбежно привело к первому публичному раскрытию в истории UEFI информации, относящейся к спецификации экосистем ARM устр-в. В январе 2023 BINARLY обнародовали несколько уязвимостей, влияющих на референс-код Qualcomm, а так же и на других производителей устройств и IBV: Multiple Vulnerabilities in Qualcomm and Lenovo ARM based Devices
Это было результатом исследования, целью которого было определить - станут ли такие же атаки / классы багов, представленные на x86 устр-вах влиять на ARM девайсы. Наша работа включала в себя реконструкцию boot flow на ARM устр-вах с UEFI прошивкой, а так же изучить средства защиты, и способы смягчения последствий атаки, в сравнении с х86 системами. Мы обсуждаем общий охват и недостатки средств безопасности, а так же достижение arbitrary code execution во время загрузки, как результат эксплойтации уязвимости в фазе DXE с помощью техники ROP (для обхода DEP).
В прошлом мае, на OffensiveCon команда The Binarly Research охватила различные аспекты унификации разработки прошивок с такими фреймворками, как UEFI и последствия их безопасности, с точки зрения атаки/защиты. В этом блоге мы подробно погрузимся в основные идеи, возникшие в ходе этого исследовательского проекта.
запись разговора
слайды доступны
Общий взгляд на UEFI экосистему в ARM
AMI поделились первыми идеями разработки UEFI прошивок для ARM устр-в на UEFI Plugfest в 2016:
линк
Помимо перехода на новую архитектуру CPU, самое явное отличие была - имплементация изолированной среды исполнения для SMM-подобных и runtime services внутри TrustZone ARM. В конце концов, каждое устр-во будет иметь bootROM (не обновляемый) SoC-specific firmware, которое типично для процессоров ARM. Системная прошивка будет состоять из 3-ех компонентов: UEFI прошивка для загрузочной среды, hypervisor и прошивку TrustZone, которая обычно построенна на ARM Trusted Firmware (TF) и Trusted Execution Environment (TEE), и дополненна большим кол-вом кода для поддержки функциональности UEFI management mode (MM) и других раличных функций, включая функции безопасности.
Держа в уме то, как идеальный концепт может отличаться от реальности, мы решили проверить рельную UEFI прошивку на реальном ARM устройстве.
Играем с тестовым ARM девайсом (Windows Dev kit 2023)
Как было упомянуто выше, целевым устройством мы выбрали Microsoft Windows Dev Kit 2023 (так же известная, как проект "Volterra") на процессоре Qualcomm Snapdragon 8cx Gen 3. Мы выбрали это устр-во, потому что были уверенны в наличии интересных нам уязвимостей на его прошивке. Более того - этот девайс один из самых доступных на рынке.Единственным недостатком этого устройства является то, что имеет трудности с тем, что бы быть Linux-Friendly, исходя из этого мы решили проводить наши эксперименты с Windows, и с UEFIShell (используя наши собственные EFI драйверы и приложения).
До проведения любых экспериментов - лучше всего заиметь образ UEFI пршивки для текущего устройства, с целью изучить её на предмет уязвимостей, изучить boot flow, проверит статические конфигурации, и.т.д..
В целом - есть 3 способа это сделать:
⦁ Скачать
View hidden content is available for registered users!
View hidden content is available for registered users!