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

Компаниите 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

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster