Odkryto poważny błąd w procesorach. Podatność Meltdown i Spectre.

Zagadnienia bezpieczeństwa w systemie
Awatar użytkownika
dedito
Moderator
Posty: 2428
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Odkryto poważny błąd w procesorach. Podatność Meltdown i Spectre.

Post autor: dedito » 04 stycznia 2018, 09:47

Obrazek
Problem może dotyczyć każdego procesora, który posiada zdolność wykonywania instrukcji spekulatywnie.
Podatne są procesory Intela, AMD i ARM, zatem nie tylko komputery osobiste, ale także serwery i smartfony.

Do jądra w wersji 4.14.11 wprowadzono już odpowiednią łatkę związaną z podatnością określaną jako Meltdown.
Na podatność określaną mianem Spectre, łatki obecnie nie udostępniono.

Debian powinien niedługo załatać swoje jądra (przynajmniej na okoliczność Meltdown) i udostępnić w repozytoriach.
Postępy w łataniu kerneli Debiana można śledzić w zarejestrowanych bug'ach:
Spectre: Branch target injection CVE-2017-5715,
Spectre: Bounds check bypass CVE-2017-5753,
Meltdown: Rogue data cache load CVE-2017-5754.

Na chwilę obecną łatka na podatność określaną jako Meltdown jest dostępna w jądrach dla Debiana wheezy, stretch i sid oraz w jądrach budowanych przez innych: aptosid i liquorix.
Aby zainstalować jądra z innych źródeł, należy dodać repozytoria lub ręcznie ściągnąć jądro właściwe dla naszej architektury sprzętowej.
http://www.aptosid.com/index.php?module ... view&pid=2
https://liquorix.net/

Po wszystkim warto sprawdzić czy łatka na Meltdown jest obecna i aktywna w naszym jądrze.

Kod: Zaznacz cały

cat /boot/config-$(uname -r ) | grep CONFIG_PAGE_TABLE_ISOLATION
lub

Kod: Zaznacz cały

zcat /proc/config.gz | grep CONFIG_PAGE_TABLE_ISOLATION
Co w wyniku powinno dać:

Kod: Zaznacz cały

CONFIG_PAGE_TABLE_ISOLATION=y
Można też sprawdzić system gruntownie pod kątem wszystkich 3 podatności za pomocą skryptu https://github.com/speed47/spectre-meltdown-checker

Szerszy opis po polsku z YT: https://www.youtube.com/watch?v=FBy2gZD3OUw

Poniżej wybrane cytaty z podlinkowanych artykułów.
Niebezpiecznik:
Odkryto błąd w architekturze procesorów (nie tylko tych produkowanych przez Intela). Rezultatem jest dziura, która objawia się bardzo groźnym wyciekiem informacji przechowywanych w pamięci jądra systemu operacyjnego. Aby usunąć tę dziurę trzeba… albo wymienić procesor albo zainstalować łatki, które znacznie spowolniają jego pracę (od 5% do nawet 62%, w zależności od tego, do czego głównie wykorzystujecie komputer).
...
Podkreślmy, że póki co nie jest dostępny publicznie żaden exploit który pozwalałby na bezpośrednie, szybkie odczytywanie dowolnie wybranego obszaru w pamięci kernela. A więc do apokaliptycznych wizji typu “naciśnij atak i po sekundzie miej uprawnienia administratora” jeszcze daleko. Ale to pewnie tylko kwestia czasu… Zapewne teraz wiele mądrych głów patrzy, jak można by tę dziurę wykorzystać do stworzenia najwydajniejszego ataku.
ZTS:
Badacze, stojący za odkryciami, opisali dwie kategorie ataków: Meltdown i Spectre.

Meltdown umożliwia nieuprzywilejowanemu procesowi odczytywanie zawartości całej pamięci systemowej. Na atak podatne są wszystkie procesory Intela wyprodukowane od roku 1995, oprócz Itanium i Intel Atom sprzed roku 2013 (zatem problem dotyczy zarówno komputerów osobistych jak i serwerów). Nie potwierdzono podatności procesorów AMD i ARM. Dostępne są lub lada moment będą aktualizacje usuwające problem.

Spectre umożliwia złośliwemu procesowi odczytywanie pamięci innych procesów. Podatne są procesory Intela, AMD i ARM, zatem nie tylko komputery osobiste, ale także serwery i smartfony. Trwają prace nad stworzeniem aktualizacji usuwających wykryte problemy. Atak Spectre jest trudniejszy do przeprowadzenia niż atak Meltdown.
Sekurak:
Potencjalny bug np. w przeglądarce internetowej nagle daje możliwość odczytania pamięci jądra (a tam np. znalezienie haseł w formie jawnej czy innych ciekawych kąsków) – wygląda niemiło prawda?
Lista procesorów podatnych na opisywany atak:
Intel: https://security-center.intel.com/advis ... geid=en-fr
AMD:
ARM:

Baza potencjalnych exploitów:
https://github.com/search?utf8=%E2%9C%9 ... tack&type=
https://github.com/search?utf8=%E2%9C%9 ... tack&type=

Literatura:
https://meltdownattack.com/
https://spectreattack.com/
https://googleprojectzero.blogspot.com/ ... -side.html
https://niebezpiecznik.pl/post/powazna- ... nisz-o-30/
https://niebezpiecznik.pl/post/szczegol ... i-spectre/
https://zaufanatrzeciastrona.pl/post/zn ... ocesorach/
https://zaufanatrzeciastrona.pl/post/ni ... orek-o-60/
https://sekurak.pl/podatnosc-sprzetowa- ... indowsosx/
https://sekurak.pl/intelamdarm-wszystko ... ieci-z-os/

https://lkml.org/lkml/2017/12/4/709

Aktualizacje:
2018-02-23 [dedito] Dodano link YT z opisem podatności.

Awatar użytkownika
arturromarr
Beginner
Posty: 100
Rejestracja: 14 sierpnia 2015, 01:21

Re: Odkryto poważny błąd w procesorach. Podatność Meltdown i Spectre.

Post autor: arturromarr » 10 stycznia 2018, 12:27

Czy wiadomo coś o spowolnieniu pracy systemu po wprowadzeniu łatek?

Awatar użytkownika
dedito
Moderator
Posty: 2428
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Odkryto poważny błąd w procesorach. Podatność Meltdown i Spectre.

Post autor: dedito » 10 stycznia 2018, 13:22

Jakiś miarodajnych testów jeszcze nie oglądałem.
Na Phoronix znajdziesz parę testów po zaaplikowaniu łatki na Meltdown jak i również Spectre.
Wiele zależy od tego co robimy na tym systemie.

Cytat w sprawie Meltdown z końcówki testu dla graczy https://www.phoronix.com/scan.php?page= ... kpti&num=1
As said already, the game load times were not affected either by this new kernel security feature. So long story short, the NVIDIA gaming performance -- similar to the already published Radeon results -- are minimally impacted by KPTI if at all. Reports of the NVIDIA driver being more adversely impacted by KPTI than Radeon appear to be unfounded.

In all of my KPTI / "CPU bug" testing so far this week, the most noticeable but still not anything close to being like a universal "5~30% slowdown" (what some other outlets have been erroneously reporting) is just with select high I/O workloads and VM performance suffering in some situations.

Awatar użytkownika
arturromarr
Beginner
Posty: 100
Rejestracja: 14 sierpnia 2015, 01:21

Re: Odkryto poważny błąd w procesorach. Podatność Meltdown i Spectre.

Post autor: arturromarr » 10 stycznia 2018, 19:54

Dzięki za informacje.
Czyli aktualizacja jądra obowiązkowa.
Znajdę gdzieś opis jak to łatwo zrobić?

Awatar użytkownika
dedito
Moderator
Posty: 2428
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Odkryto poważny błąd w procesorach. Podatność Meltdown i Spectre.

Post autor: dedito » 10 stycznia 2018, 20:49

Łatanie jeszcze trochę potrwa, ale aktualizacja wskazana.
Aktualizujesz po prostu system.

Awatar użytkownika
solaris7
Posty: 57
Rejestracja: 07 września 2017, 12:08

Re: Odkryto poważny błąd w procesorach. Podatność Meltdown i Spectre.

Post autor: solaris7 » 11 stycznia 2018, 11:08

Ja na stable dałem po prostu tą komendę:

Kod: Zaznacz cały

apt-get update && apt-get dist-upgrade
i poszło do linux-image-amd64.....
I jest to:

Kod: Zaznacz cały

$ cat /boot/config-$(uname -r ) | grep CONFIG_PAGE_TABLE_ISOLATION
CONFIG_PAGE_TABLE_ISOLATION=y
Czyli na Meltdown załatane?

Awatar użytkownika
dedito
Moderator
Posty: 2428
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: Odkryto poważny błąd w procesorach. Podatność Meltdown i Spectre.

Post autor: dedito » 11 stycznia 2018, 14:09

Tak, na Meltdown załatane.
Możesz też uruchomić powyższy skrypt, który zbiorczo sprawdza łatki na wszystkie 3 podatności.
https://github.com/speed47/spectre-meltdown-checker
Obrazek

ODPOWIEDZ