октомври 25, 2025

Intel и AMD стандартизират механизма ChkTag за защита от уязвимости в паметта

Intel и AMD разработват съвместно разширения набор от инструкции ChkTag (x86 Memory Tagging), който ще бъде стандартизиран за унифицирано прилагане в x86 процесорите на различни производители. ChkTag наподобява разширението MTE (MemTag), което вече е предвидено в процесорите ARM, и също така позволява блокиране на използването на уязвимости, причинени от достъп до вече освободени блокове памет, препълване на буфера или достъп до паметта преди инициализация.

ChkTag предлага нови процесорни инструкции, които позволяват обвързване на хардуерно ниво на таговете с области в паметта и организират валидирането на указатели. Посочва се, че използването на тези инструкции от компилаторите ще позволи осигуряването на безопасна работа с паметта, без да се намалява производителността на приложенията. В същото време приложенията, използващи ChkTag, ще останат съвместими с по-старите процесори, които нямат хардуерна поддръжка за ChkTag, което ще опрости прилагането на защитата.

Реализираният метод за защита се състои в създаването на таг за всеки блок памет, който действа като ключ за достъп до тази памет (например в реализацията на MTE се създава 4-битов таг за всеки 16 байта). Тагът се генерира от приложението за разпределената област от паметта с помощта на специални инструкции на процесора и след това се съхранява в горните неизползвани битове на указателя, както и в линейната/виртуалната област от паметта, запазена и недостъпна за приложенията. При достъп до паметта, използвайки указател с таг, процесорът проверява дали тагът, свързан с указателя, съвпада с таговете, свързани с блоковете памет, и разрешава достъп само ако таговете съвпадат.

Технологията 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.

source

Сподели: