Menu dostępności

Nowa luka w Linux umożliwia przejęcie pełnej kontroli nad systemem

Po wczorajszej opublikowanej przez nas informacji na temat wykrytych błędów zeroday w wielu aplikacjach i systemach podczas zawodów Tianfu Cup mamy kolejny błąd – tym razem w kernelu Linux (specjalnie nie piszemy „w jądrze”, żeby aż tak bardzo nie bolało :)). Badacze nazwali go „prostym błędem blokowania kernela Linux”, który wykorzystali w jądrze 4.19.0.13-amd64 Debiana Bustera. Błąd uszkodzenia pamięci jądra Linux powoduje całkowite naruszenie systemu


Błąd w Kernelu Linux

Przypominamy, że podobny błąd https://www.mcafee.com/blogs/other-blogs/mcafee-labs/linux-kernel-vulnerability-can-lead-to-privilege-escalation-analyzing-cve-2017-1000112/ ujawniony został w 2017 roku przez badaczy MacAfee. Powodował on uszkodzenie pamięci w ramach odciążania fragmentacji UDP (UFO) kernela Linux, który umożliwiał nieautoryzowanym osobom uzyskanie lokalnych eskalacji uprawnień. Błąd dotyczył ścieżek kodu IPv4 i IPv6 z jądrem w wersji 4.8.0 Ubuntu xenial i został naprawiony w Commit 85f1bd9.

Wykrycie nowej podatności zawdzięczamy zespołowi Google Project Zero. który udostępnił szczegóły podobnego, ale znacznie prostszego błędu, który może spowodować całkowite naruszenie systemu. Badacze nazwali to „prostym błędem blokowania kernala Linux”, który wykorzystali w jądrze 4.19.0.13-amd64 systemu Debian Buster.


Źródło problemu

Według wpisu na blogu Project Zero błąd znajdował się w module obsługi ioctl – tiocspgrp. Element pgrp po stronie terminala (real_tty) został zmodyfikowany, aby go wykorzystać, podczas gdy licznik odwołań do starych i nowych grup procesów został odpowiednio dostosowany za pomocą put_pid i get_pid.
Mbr> Blokada jest ustawiona na tty, która w zależności od deskryptora pliku przekazanego przez badaczy do ioctl() może być dowolnym końcem pary pseudoterminali. Tak więc nazwali ioctl TIOCSPGRP po obu stronach pseudoterminalu, aby wyścigi danych między równoczesnymi dostępami do elementu pgrp, powodując przekrzywienie zliczania referencji przez kilka wyścigów.
Dla niewtajemniczonych wyjaśniamy, że wyścig danych (z ang. data-race) ma miejsce, gdy:

  • dwa lub więcej wątków w jednym procesie jednocześnie uzyskuje dostęp do tej samej lokalizacji pamięci, oraz
  • co najmniej jeden z dostępów służy do pisania i
  • wątki nie używają żadnych wyłącznych blokad do kontroli dostępu do tej pamięci.

Jann Horn z Google Project Zero stwierdził, że refcount starego pid struktury wykazał spadek o 1 za dużo w obu przypadkach, podczas gdy A lub B zostały zwiększone o 1 za dużo. Zespół publikuje również dowód koncepcji, który jest dostępny tutaj.

Popularne

7-Zip podatny na NTFS Heap Overflow

7-Zip podatny na NTFS Heap Overflow

Jaroslav Lobačevski z GitHub Security Lab opublikował analizę nowej podatności odnalezionej w 7-Zip, oznaczonej jako GHSL-2026-140. Luka dotyczy parsera NTFS i prowadzi do uszkodzenia pamięci procesu, co w...
Krytyczna luka w Windows Search ujawnia hashe NTLMv2. Microsoft nie wydał jeszcze poprawki

Krytyczna luka w Windows Search ujawnia hashe NTLMv2. Microsoft nie wydał jeszcze poprawki

Eksperci z Huntress ujawnili nową podatność, umożliwiającą wyciek poświadczeń NTLMv2 za pośrednictwem mechanizmu Windows Search. Problem dotyczy obsługi schematu URI wykorzystywanego przez Eksplorator Windows d...
YellowKey: koniec mitu o bezpieczeństwie BitLockera? Nowy zero-day pozwala ominąć szyfrowanie przy użyciu zwykłego pendrive’a

YellowKey: koniec mitu o bezpieczeństwie BitLockera? Nowy zero-day pozwala ominąć szyfrowanie przy użyciu zwykłego pendrive’a

Jeszcze w piątek opisywaliśmy nowe podatności typu zero-day, o nazwach YellowKey oraz GreenPlasma, uderzające w mechanizmy bezpieczeństwa systemów Windows. Najnowsze informacje pokazują jednak, że spr...
Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

W tym artykule pokażemy, jak możemy zmienić hasło administratora na komputerze posiadając do niego fizyczny dostęp. Artykuł ten można potraktować także jako przestrogę dla firm, które nie zaimplementowały jeszcze odpo...
19-letnia luka w jądrze Linuksa naraża systemy na dostęp root

19-letnia luka w jądrze Linuksa naraża systemy na dostęp root

Właśnie opublikowano kod exploita Proof-of-Concept (PoC) dla luki CIFSwitch, która umożliwia użytkownikom o niskich uprawnieniach uzyskanie dostępu root w podatnych systemach Linux. Luka w zabezpieczeniach jądra...