Aktualizacja systemu Microsoft Windows zakłóca działanie systemu Linux na procesorach Intel, co ma wpływ na użytkowników AMD

Linus Torvalds oferuje pedał gitarowy pośród kontrowersji wokół jądra

W niespodziewanym, ale zachwycającym obrocie wydarzeń Linus Torvalds podzielił się swoim świątecznym nastrojem wcześniej dziś, wyrażając chęć stworzenia spersonalizowanego pedału gitarowego dla szczęśliwego programisty Linuksa. Ten gest pojawia się w czasie, gdy społeczność programistów świętuje postęp wersji jądra Linuksa 6.13, pośród ogólnie pozytywnego sezonu świątecznego.

Zmiana jądra budzi kontrowersje

Jednak radosne usposobienie Torvaldsa napotkało przeszkodę z powodu niedawno zaproponowanej zmiany Microsoftu, która groziła zahamowaniem postępu. Na szczęście szybkie interwencje Intela i AMD zdołały złagodzić problem w samą porę.

Szczegóły kontrowersyjnej zmiany

Problematyczna zmiana dotyczyła konfiguracji jądra znanej jako ARCH_HAS_EXECMEM_ROX. To ustawienie miało na celu zwiększenie wydajności poprzez włączenie buforowania pamięci wykonywalnej (EXECMEM) z uprawnieniami do wykonywania tylko do odczytu (ROX), szczególnie dla architektur x86_64 i AMD64 — zasadniczo ukierunkowanych na 64-bitowe procesory AMD i Intel.

Pojawiają się obawy techniczne

Niestety, ta zmiana została przesłana bez odpowiedniego potwierdzenia od opiekuna jądra x86, co doprowadziło do poważnych problemów z integralnością przepływu sterowania (CFI) na dotkniętych procesorach. Peter Zijlstra z Intela wydał dziś pilną prośbę o cofnięcie zmian związanych z obsługą EXECMEM_ROX, powołując się na fakt, że implementacja pozostaje niedokończona i problematyczna.

x86: Wyłącz obsługę EXECMEM_ROX

Cały ten nonsens z module_writable_address() narobił niezłego bałaganu w alternative.c, nie wspominając o tym, że nadal zawiera błędy — niektóre warianty CFI ulegają awarii i przestają działać.

Mike pracował nad poprawkami, które mają to wszystko uporządkować, ale biorąc pod uwagę obecny stan rzeczy, te rzeczy po prostu nie są gotowe.

Wyłącz na razie, spróbujemy ponownie w następnym cyklu.

Reakcje przemysłu

Borislav Petkov z AMD również wyraził swoje niezadowolenie, zwracając uwagę na niedopatrzenie w procesie:

Uwielbiam to, jak to poszło bez ani jednego opiekuna x86 Ack, zepsuło to mnóstwo rzeczy, a potem nadal tam jest, zamiast zostać przywróconym. Nie róbmy tego więcej, proszę.

— Pozdrawiam/Grus, Borys.

Zrozumienie technologii wymuszania przepływu sterowania (CET)

Dla tych, którzy mogą nie być świadomi, Control-flow Enforcement Technology (CET) stanowi kluczowe ulepszenie bezpieczeństwa w nowoczesnym przetwarzaniu. Zawiera dwa główne komponenty: Shadow Stack i Indirect Branch Targeting (IBT). Shadow Stack działa jako obrona przed atakami Return Oriented Programming (ROP), podczas gdy IBT chroni systemy przed zagrożeniami Call or Jump Oriented Programming (COP/JOP).

CET osiąga to bezpieczeństwo poprzez porównanie tradycyjnego stosu programów z kopią zapasową przechowywaną na sprzęcie, znaną jako Shadow Stack, zapewniając w ten sposób dokładność adresów zwrotnych. W istocie Shadow Stack odgrywa kluczową rolę w zapobieganiu przejęciu przez złośliwe oprogramowanie przepływu wykonywania legalnego oprogramowania, skutecznie oznaczając wszelkie potencjalnie zagrożone programy.

Więcej informacji i szczegółową analizę znajdziesz tutaj .