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

Masowy wyciek danych PayPal – 15,8 miliona haseł w rękach cyberprzestępców

Masowy wyciek danych PayPal – 15,8 miliona haseł w rękach cyberprzestępców

16 sierpnia br. na forum cyberprzestępczym pojawiła się oferta sprzedaży ogromnej bazy danych, zawierającej ponad 15,8 miliona par adresów e-mail i haseł w formacie jawnego tekstu powiązanych z konta...
Groźna dziura w Microsoft IIS. Deserializacja usług może prowadzić do zdalnego wykonania kodu

Groźna dziura w Microsoft IIS. Deserializacja usług może prowadzić do zdalnego wykonania kodu

W połowie sierpnia 2025 roku ujawniono poważną lukę bezpieczeństwa w narzędziu Microsoft Web Deploy 4.0, używanym do publikacji aplikacji webowych na serwerach IIS. Luka – oznaczona jako CVE-2025-53772 – pozwal...
Wyciek kodu źródłowego trojana bankowego ERMAC V3.0

Wyciek kodu źródłowego trojana bankowego ERMAC V3.0

Świat cyberbezpieczeństwa odnotował kolejne znaczące wydarzenie – ujawniono pełny kod źródłowy zaawansowanego trojana bankowego ERMAC V3.0, stworzonego z myślą o urządzeniach z systemem Android i działające...
Co sprawia, że Deep Web jest cennym źródłem threat intelligence?

Co sprawia, że Deep Web jest cennym źródłem threat intelligence?

Deep Web, czyli warstwa Internetu niedostępna dla standardowych wyszukiwarek, często bywa pomijana w analizach bezpieczeństwa, mimo że stanowi niezwykle wartościowe źródło informacji o zagrożeniach. Jej tre...
Miliony laptopów Dell narażone na kompromitację

Miliony laptopów Dell narażone na kompromitację

Niedawno pisaliśmy o kłopotach Lenovo, dzisiaj czas na Dell. Okazuje się, że pięć luk w oprogramowaniu ControlVault3 i powiązanych interfejsach API systemu Windows naraża miliony laptopów na trwałe w...