group-telegram.com/tech_b0lt_Genona/5841
Last Update:
В 2023 году Microsoft открыл проект CHERIoT (Capability Hardware Extension to RISC-V for Internet of Things), который направлен на то что бы улучшить безопасность уже существующих проектов на C и C++.
First steps in CHERIoT Security Research
https://www.microsoft.com/en-us/msrc/blog/2023/02/first-steps-in-cheriot-security-research/
И вот наконец-то он дорос до версии 1.0
Программно-аппаратная платформа CHERIoT 1.0 для повышения безопасности кода на языке Си
https://www.opennet.ru/opennews/art.shtml?num=64180
> Защита реализуется через применение модифицированного компилятора, использующего расширенный набор процессорных инструкций (ISA) для обеспечения целостности указателей, контроля за границами при работе с памятью и предотвращения обращения к освобождённой памяти.
> Аппаратные компоненты CHERIoT оформлены в виде микроконтроллера на базе архитектуры RISC-V, реализующего защищённую процессорную архитектуру CHERI (Capability Hardware Extension to RISC-V) c моделью управляемого доступа к памяти на основе "capability" (каждая операция чтения и записи в память авторизуется). На базе предоставляемой в CHERIoT архитектуры набора команд (ISA) построена программная модель, гарантирующая безопасность работы с памятью на уровне отдельных объектов, предоставляющая защиту от обращения к уже освобождённой памяти и реализующая легковесную систему изоляции доступа к памяти.
> Указанная программная модель защиты напрямую отражается в языковую модель C/C++, что позволяет применять её для существующих приложений, для защиты которых требуется лишь перекомпиляция и запуск на оборудовании, поддерживающем ISA CHERIoT.
> Среди проблем, блокируемых при помощи CHERIoT:
- Выход за границы объекта в памяти;
- Подмена указателей (при применении CHERIoT все указатели должны порождаться от уже существующих указателей);
- Обращение к памяти после освобождения (любой доступ к памяти по некорректному указателю или указателю, ссылающемуся на освобождённый объект приводит при применении CHERIoT к генерации исключения).
Спецификация и эталонная формальная модель CHERIoT ISA
CHERIoT Specification and Sail model
https://github.com/CHERIoT-Platform/cheriot-sail/
Эталонная реализация 32-разрядного RISC-V CPU Ibex c поддержкой ISA CHERIoT, схемы прототипа CPU и описания аппаратных блоков на языке Verilog
cheriot-ibex is a RTL implementation of CHERIoT ISA based on LowRISC's Ibex core
https://github.com/microsoft/cheriot-ibex
На базе ядра CHERIoT Ibex готовятся к массовому производству чипы ICENI, поступление в продажу которых запланировано на следующий год
Модифицированный LLVM
Fork of LLVM adding CHERIoT, based on the CHERI LLVM fork
https://github.com/CHERIoT-Platform/llvm-project
Отдельно компанией Microsoft развивается микроконтроллер Kudu с поддержкой ISA CHERIoT
cheriot-kudu is a 32-bit dual-issue RISC-V MCU core with CHERIoT support
https://github.com/microsoft/cheriot-kudu
Эмулятор платформы на базе FPGA
https://github.com/microsoft/cheriot-safe
Docker-контейнер для разработчиков
https://github.com/CHERIoT-Platform/devcontainer
https://github.com/orgs/CHERIoT-Platform/packages/container/package/devcontainer
Прототип операционной системы реального времени
The RTOS components for the CHERIoT research platform
https://github.com/CHERIoT-Platform/cheriot-rtos
ЗЫ "Опёнок" не меняется 🌝
BY Технологический Болт Генона

Share with your friend now:
group-telegram.com/tech_b0lt_Genona/5841
