Intel и AMD стандартизируют механизм ChkTag для защиты от уязвимостей при работе с памятью
Дата публикации:Tue, 21 Oct 2025 11:31:29 +0300
Компании Intel и AMD совместно развивают расширенный набор инструкций ChkTag (x86 Memory Tagging), который будет стандартизирован для унифицированной реализации в x86-процессорах различных производителей. По своим возможностям ChkTag напоминает расширение MTE (MemTag), уже поставляемое в процессорах ARM, и также позволяет блокировать эксплуатацию уязвимостей, вызванных обращением к уже освобождённым блокам памяти, переполнением буфера или обращением к памяти до инициализации.
ChkTag предлагает новые процессорные инструкции, позволяющие на аппаратном уровне привязать теги к областям в памяти и организовать проверку корректности использования указателей. Заявлено, что применение данных инструкций компиляторами позволит обеспечить безопасную работу с памятью без снижения производительности приложений. При этом использующие ChkTag приложения останутся совместимыми со старыми процессорами, не имеющими аппаратной поддержки ChkTag, что упростит внедрение защиты.
Реализованный метод защиты сводится к созданию для каждого блока памяти тега, который выступает подобием ключа для доступа к этой памяти (например, в реализации MTE для каждых 16 байт создаётся 4-битный тег). Тег генерируется приложением для выделяемой области памяти при помощи специальных инструкций CPU, а затем сохраняется в верхних неиспользуемых битах указателя, а также в зарезервированной и недоступной для приложений области линейной/виртуальной памяти. При обращении к памяти с использованием тегированного указателя процессор проверяет соответствие тега, привязанного к указателю, с тегами, привязанными к блокам памяти, и разрешает доступ только если теги совпадают.
Технология ChkTag разработана в рамках совместной работы Intel и AMD в группе EAG (x86 Ecosystem Advisory Group), образованной год назад для сотрудничества по обеспечению совместимости между платформами x86, стандартизации интерфейсов продуктов Intel и AMD, упрощения разработки программного обеспечения для систем x86 и выявления потребностей разработчиков в расширении архитектуры. Кроме Intel и AMD в число участников группы входят Линус Торвальдс, создатель ядра Linux, Тим Суини, основатель компании Epic Games и один из ключевых разработчиков игрового движка Unreal Engine, а также представители компаний Broadcom, Dell, Google, Hewlett Packard, Lenovo, Meta, Microsoft, Oracle и Red Hat.
Помимо ChkTag компании Intel и AMD также стандартизировали и унифицировали реализации модели обработки прерываний FRED (Flexible Return and Event Delivery), набора векторных инструкций AVX10 и расширений для умножения матриц ACE (Advanced Matrix Extensions).
Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=64091