Intel i AMD standaryzują mechanizm ChkTag w celu ochrony przed lukami bezpieczeństwa związanymi z pamięcią.

Firmy Intel i AMD wspólnie rozwijają rozszerzony zestaw instrukcji ChkTag (x86 Memory Tagging), który zostanie ustandaryzowany dla zunifikowanej implementacji w procesorach x86 różnych producentów. ChkTag przypomina pod względem możliwości rozszerzenie MTE (MemTag), już dostarczane w procesorach ARM, i także pozwala na blokowanie wykorzystywania luk bezpieczeństwa, spowodowanych dostępem do już zwolnionych bloków pamięci, przepełnieniem bufora lub dostępem do pamięci przed jej inicjalizacją.

ChkTag oferuje nowe instrukcje procesora, które umożliwiają na poziomie sprzętowym przypisanie tagów do obszarów w pamięci oraz zorganizowanie weryfikacji poprawności użycia wskaźników. Zgłoszono, że zastosowanie tych instrukcji przez kompilatory pozwoli zapewnić bezpieczną pracę z pamięcią bez obniżania wydajności aplikacji. Przy tym aplikacje korzystające z ChkTag pozostaną zgodne ze starszymi procesorami, które nie mają sprzętowej obsługi ChkTag, co uprości wdrożenie zabezpieczeń.

Zrealizowana metoda zabezpieczenia polega na tworzeniu dla każdego bloku pamięci tagu, który działa jak klucz dostępu do tej pamięci (na przykład w implementacji MTE dla każdego 16 bajtów tworzy się 4-bitowy tag). Tag jest generowany przez aplikację dla wydzielonego obszaru pamięci przy pomocy specjalnych instrukcji CPU, a następnie przechowywany w górnych nieużywanych bitach wskaźnika oraz w zarezerwowanym i niedostępnym dla aplikacji obszarze pamięci liniowej/wirtualnej. Podczas dostępu do pamięci przy użyciu tagowanego wskaźnika procesor sprawdza zgodność tagu przypisanego do wskaźnika z tagami przypisanymi do bloków pamięci i zezwala na dostęp tylko w przypadku zgodności tagów.

Technologia ChkTag została opracowana w ramach współpracy Intela i AMD w grupie EAG (x86 Ecosystem Advisory Group), utworzonej rok temu w celu współpracy nad zapewnieniem zgodności między platformami x86, standaryzacji interfejsów produktów Intela i AMD, uproszczenia rozwoju oprogramowania dla systemów x86 oraz zidentyfikowania potrzeb programistów w zakresie rozszerzenia architektury. Oprócz Intela i AMD w skład grupy wchodzą Linus Torvalds, twórca jądra Linux, Tim Sweeney, założyciel Epic Games i jeden z kluczowych deweloperów silnika gier Unreal Engine, a także przedstawiciele firm Broadcom, Dell, Google, Hewlett Packard, Lenovo, Meta, Microsoft, Oracle i Red Hat.

Oprócz ChkTag firmy Intel i AMD również standaryzowały oraz zunifikowały realizacje modelu przetwarzania przerwań FRED (Flexible Return and Event Delivery), zbioru wektorowych instrukcji AVX10 oraz rozszerzeń do mnożenia macierzy ACE (Advanced Matrix Extensions).

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster