Menu dostępności

UWAGA! Zwykły użytkownik Linux może wykonać dowolną komendę! Wszystko z powodu wykrytej podatności

Jak się okazuje nie tylko systemy Microsoft są podatne na błędy oprogramowania. Nie tak dawno, bo na początku grudnia wykryto podatność pozwalająca zwykłemu użytkownikowi wykonać dowolną komendę systemctl na systemie Linux! Aktualizujcie swoje systemy i przeczytajcie ten artykuł.


Co umożliwia luka?


Luka systemowa działa na większości systemów operacyjnych i dotyczy problemu, w którym identyfikator użytkownika na Linux (tzw. Numer UID) posada wartość powyżej 2147483647. Taki użytkownik może wtedy wykonać w sposób nieautoryzowany każda komendę systemctl. Przypomnamy, że komenda systemctl odpowiada za zarządzanie usługami na Linux.

Zgłoszona luka dotyczy w rzeczywistości PolicyKit (znanego również jako polkit) – zestawu narzędzi na poziomie aplikacji dla uniksopodobnych systemów operacyjnych, który definiuje zasady(polityki), obsługuje ogólnosystemowe uprawnienia i umożliwia procesom nieuprzywilejowanym komunikowanie się z tymi uprzywilejowanymi, takimi jak jako „sudo”, które nie daje uprawnień roota do całego procesu.


Na jakich systemach występuje podatność?


Problem już został zgłoszony pod numerem CVE-2018-19788 i dotyczy PolicyKit w wersji 0.115, który jest domyślnie zainstalowany w najpopularniejszych dystrybucjach Linux’a, w tym Red Hat, Debian, Ubuntu i CentOS.

Podatność powstała na skutek błędów/nieprawidłowości w mechanizmie sprawdzania przez PolicyKit żądań uprawnień dla każdego użytkownika o niskich uprawnieniach z identyfikatorem UID większym niż parametr INT_MAX. INT_MAX jest stałą zdefiniowaną w systemie operacyjnym, która definiuje maksymalną wartość, jaką może przechowywać zmienna całkowita, która w przypadku Linux wynosi 2147483647 (w systemie szesnastkowym 0x7FFFFFFF).

Oznacza to tyle, jeśli utworzymy w niezaktualizowanym systemie Linux konto użytkownika o identyfikatorze większym niż maksymalna wartość INT_MAX, komponent PolicyKit pozwoli na tym koncie wykonać komendę systemctl.


Sprawdźmy podatność w naszym środowisku


Do testów postanowiliśmy przeznaczyć nasz system Kali Linux w ostatniej dostępnej dystrybucji, czyli z 2018.4
Scenariusz testu POC:

  1. Utworzenie użytkownika UID > INT_MAX np.. 4000000000
  2. Uruchomienie dowolnej komendy systemctl np. zatrzymanie usługi cron.

Najpierw stwórzmy konto kapitanh na systemie linux Kali:

Zalogujmy się na użytkownika kapitanh do systemu Kali Linux.
Wyświetlmy identyfikator użytkownika, wersję systemu oraz agenta Polkit:

Zatem nasz system zgodnie z informacja o podatności powinien być dziurawy. Sprawdźmy, czy faktycznie jest. Spróbujemy zastopować serwis cron:

Udało się! Zatrzymaliśmy serwis Cron na zwykłym koncie użytkownika na systemie operacyjnym Linux Kali. Oznacza to, że możemy robić z usługami co nam się tylko podoba 🙂

Na koniec jako ciekawostkę dodamy, iż za pomocą tej luki można utworzyć podatny serwis w Linux. Szczegóły znajdziecie tutaj.


Jak sobie radzić z problemem?


Pamiętajcie o aktualizacji luki (jak będzie tylko dostępna łatka) i sprawdzaniu / monitorowaniu wszystkich użytkowników na Linux. Redhat np. jeszcze łatki nie stworzył link. Użytkownicy z UID większym od 214748364, a już na pewno od 4000000000 będą na pewno w tym przypadku napiętnowani 🙂


Pozdrawiamy,
Kapitan Hack

Popularne

Nowa luka w Microsoft Teams – lepiej nie być zapraszanym…

Nowa luka w Microsoft Teams – lepiej nie być zapraszanym…

Usługa Microsoft Teams stała się kluczowym narzędziem do komunikacji i współpracy w firmach na całym świecie. Z tego powodu wiele organizacji polega na zabezpieczeniach takich jak Microsoft Defender for Off...
Ważna zmiana w OWASP Top 10

Ważna zmiana w OWASP Top 10

OWASP, czyli Open Worldwide Application Security Project, zaproponowało nowe wydanie swojej klasycznej listy Top 10 ryzyk aplikacyjnych. Wersja z 2025 roku wprowadza kluczowe rozszerzenia dotyczące b...
Jak modele LLM automatyzują cyberprzestępczość

Jak modele LLM automatyzują cyberprzestępczość

Każdy Czytelnik Kapitana Hacka wie, że złośliwe LLM-y ułatwiają mniej doświadczonym cyberprzestępcom przeprowadzanie ataków. Potwierdzają to badacze z Palo Alto Networks, którzy przeanalizowali dwa niedaw...
Wizualizacja ścieżek ataku na Active Directory za pomocą narzędzia BloodHound

Wizualizacja ścieżek ataku na Active Directory za pomocą narzędzia BloodHound

Krótko o narzędziu Bloodhound to narzędzie służące do wizualizacji i analizy powiązań w Active Directory. Dla atakującego jest niezastąpioną pomocą do znajdowania ścieżki ataku na najbardziej c...
Jak błąd w 7-Zip (CVE-2025-11001) daje hakerom dostęp do systemu Windows. Jest exploit

Jak błąd w 7-Zip (CVE-2025-11001) daje hakerom dostęp do systemu Windows. Jest exploit

Odkryto niezwykle niebezpieczną dla użytkowników systemów Windows podatność. Błąd o numerze CVE‑2025‑11001 jest już częściowo wykorzystywany, a dotyczy popularnego programu 7-Zip. Polega na niewłaściwe...