TONTOU omija zabezpieczenia Spectre v2 i umożliwia wyciek hashy haseł z Linuksa - Security Bez Tabu

TONTOU omija zabezpieczenia Spectre v2 i umożliwia wyciek hashy haseł z Linuksa

Cybersecurity news

Wprowadzenie do problemu / definicja

TONTOU to nowa technika ataku mikroarchitektonicznego wykorzystująca wykonanie spekulacyjne procesora. Jej znaczenie polega na tym, że podważa skuteczność współczesnych mechanizmów łagodzenia Spectre v2 na platformach AMD i Intel, pokazując, że nawet po „wyczyszczeniu” stanu predyktora skoków pozostaje krótkie okno czasowe, które może zostać wykorzystane przez atakującego.

W praktyce oznacza to możliwość ponownego zatrucia struktur predykcji skoków jeszcze przed wykonaniem chronionej instrukcji pośredniej. Jeśli taki scenariusz powiedzie się, procesor może wejść na błędną ścieżkę spekulacyjną i ujawnić wrażliwe dane za pośrednictwem kanału bocznego.

W skrócie

  • Badacze z MIT CSAIL opisali atak TONTOU, który omija mechanizmy neutralizacyjne Spectre v2.
  • Technika dotyczy procesorów AMD i Intel oraz wykorzystuje precyzyjnie wstrzykiwane przerwania.
  • W demonstracji na AMD Zen 2 udało się odczytywać arbitralną pamięć jądra Linuksa.
  • Badacze pokazali także możliwość odnalezienia i wycieku hashy haseł z pliku /etc/shadow.
  • Problem został nagłośniony publicznie podczas Black Hat USA 2026, a AMD opublikowało biuletyn bezpieczeństwa.

Kontekst / historia

Spectre v2, znane również jako Branch Target Injection, od lat pozostaje jednym z najważniejszych problemów bezpieczeństwa związanych z nowoczesnymi procesorami. Ataki z tej rodziny wykorzystują fakt, że CPU przewiduje przyszły przebieg wykonania kodu, aby zwiększyć wydajność, a błędne przewidywania mogą pozostawiać ślady widoczne w stanie mikroarchitektonicznym.

Po ujawnieniu Spectre producenci sprzętu i twórcy systemów operacyjnych wdrożyli liczne mechanizmy obronne. Szczególne znaczenie zyskały podejścia neutralizacyjne, których celem jest czyszczenie lub izolowanie stanu predyktorów skoków, aby kod ofiary nie korzystał z danych uprzednio przygotowanych przez proces atakujący.

TONTOU podważa jednak kluczowe założenie tych zabezpieczeń. Badanie pokazuje, że jeśli napastnik zdoła wpłynąć na procesor w krótkim przedziale pomiędzy neutralizacją a użyciem oczyszczonego stanu, może ponownie przygotować warunki do błędnej spekulacji.

Analiza techniczna

Sercem ataku jest tzw. post-neutralization window, czyli okno występujące po zneutralizowaniu stanu predykcyjnego, ale jeszcze przed jego wykorzystaniem przez chroniony skok pośredni lub instrukcję powrotu. To właśnie ten moment badacze uznali za praktycznie eksploatowalny.

W pracy opisano prymityw nazwany Interrupt Injection. Zakłada on możliwość bardzo precyzyjnego planowania przerwań tak, aby wystąpiły podczas wykonywania kodu jądra. Obsługa takiego przerwania może następnie zostać użyta do ponownego wpłynięcia na struktury predykcji skoków i przygotowania błędnej ścieżki spekulacyjnej zgodnej z celem atakującego.

W zależności od architektury atak obejmuje różne elementy jednostki predykcji. Po stronie Intela badacze wskazali możliwość wpływania na Branch History Buffer i Indirect Branch Predictor mimo obecności aktualnych mechanizmów ochronnych, takich jak eIBRS. W przypadku AMD pokazano możliwość manipulacji Return Stack Buffer poprzez połączenie techniki wstrzykiwania przerwań z wcześniej opisaną metodą Inception.

Najbardziej praktyczny wymiar badań to demonstracja end-to-end na platformie AMD Zen 2 z aktywnymi zabezpieczeniami systemowymi. W tym scenariuszu udało się uzyskać wyciek arbitralnej pamięci jądra Linuksa z przepustowością 5,47 bajta na sekundę i skutecznością 91,97%. Badacze zdołali także w części prób odnaleźć i odczytać zawartość /etc/shadow, co pokazuje, że problem nie jest wyłącznie teoretyczny.

Konsekwencje / ryzyko

Najpoważniejszą konsekwencją TONTOU jest osłabienie zaufania do aktualnych mitigacji Spectre v2 opartych na neutralizacji stanu predyktorów. Organizacje, które zakładały, że obecne mikrokody i jądra systemów całkowicie ograniczają praktyczne ryzyko BTI, muszą uwzględnić scenariusz dalszego wycieku danych z przestrzeni jądra.

Szczególnie istotne jest to w środowiskach, w których nieuprzywilejowani użytkownicy lub procesy mogą uruchamiać własny kod. Dotyczy to między innymi serwerów współdzielonych, hostów deweloperskich, systemów CI/CD, środowisk badawczych, platform wielodostępnych oraz wybranych wdrożeń chmurowych i kontenerowych.

Wycieki hashy haseł z /etc/shadow mogą stać się punktem wyjścia do dalszych działań ofensywnych. Obejmują one ataki offline na hasła, eskalację uprawnień, przejmowanie kont oraz ruch boczny w infrastrukturze. Choć atak wymaga precyzyjnego timingu i zaawansowanej wiedzy, jego demonstracja ma duże znaczenie strategiczne dla przyszłych badań i praktyki obronnej.

Rekomendacje

Administratorzy i zespoły bezpieczeństwa powinni przede wszystkim zidentyfikować systemy wykorzystujące potencjalnie podatne klasy procesorów AMD i Intel oraz stale monitorować komunikaty producentów sprzętu, opiekunów jądra Linuksa i dostawców dystrybucji.

W środowiskach podwyższonego ryzyka kluczowe jest szybkie wdrażanie aktualizacji mikrokodu i łatek systemowych, gdy tylko staną się dostępne. Równie ważne pozostaje ograniczanie możliwości uruchamiania nieufnego kodu na hostach przetwarzających dane uprzywilejowane.

  • regularnie weryfikować stan aktywnych mitigacji Spectre w jądrze i konfiguracji systemu,
  • ograniczać dostęp użytkowników do wykonywania kodu natywnego na wrażliwych hostach,
  • rozdzielać obciążenia według poziomu zaufania i minimalizować wielodostępność,
  • segmentować systemy przechowujące sekrety, klucze i dane uwierzytelniające,
  • stosować silne hasła oraz odporne algorytmy haszowania, aby ograniczyć skutki ewentualnego wycieku,
  • uwzględniać ataki mikroarchitektoniczne w modelu zagrożeń i testach bezpieczeństwa.

Podsumowanie

TONTOU to ważny sygnał ostrzegawczy dla administratorów Linuksa, producentów sprzętu i zespołów odpowiedzialnych za bezpieczeństwo infrastruktury. Atak pokazuje, że zabezpieczenia Spectre v2 oparte na neutralizacji predyktorów skoków nie eliminują całkowicie ryzyka, jeśli napastnik potrafi wykorzystać krótkie okno pomiędzy neutralizacją a użyciem stanu predykcyjnego.

Demonstracja wycieku pamięci jądra oraz hashy haseł potwierdza praktyczne znaczenie problemu. Dla organizacji oznacza to potrzebę dalszego monitorowania aktualizacji, ograniczania uruchamiania nieufnego kodu i traktowania zagrożeń mikroarchitektonicznych jako realnego elementu strategii obronnej.

Źródła

  1. https://www.bleepingcomputer.com/news/security/new-tontou-cpu-attack-bypasses-spectre-v2-fixes-leaks-linux-password-hashes/
  2. https://people.csail.mit.edu/mengjia/data/2026.USENIX.TONTOU.pdf
  3. https://www.amd.com/en/resources/product-security/bulletin/amd-sb-7061.html
  4. https://blackhat.com/us-26/briefings/schedule/