Żądny wiedzy? Wbijaj na Mega Sekurak Hacking Party w maju! -30% z kodem: majearly

Można dostać lokalnego roota na Ubuntu – banalny błąd

12 lutego 2017, 15:45 | W biegu | 0 komentarzy

Powodem jest /bin/ntfs-3g który posiada bit suid (właściciel root). Jeśli nasz linux nie obsługuje FUSE, ntfs-3g uruchamia modprobe i próbuje dorzucić do jądra odpowiedni moduł.

Problem w tym, że modprobe nie bardzo powinien być używany wewnątrz suidowanej binarki, czytamy bowiem:

The MODPROBE_OPTIONS environment variable can also be used
to pass arguments to modprobe.

Wystarczy więc przekazać odpowiedni parametr w zmiennej MODPROBE_OPTIONS i ładujemy własne modułu do jądra = wykonanie kodu z pełnymi uprawnieniami.

Jeśli nasz system wspiera FUSE, to i tak jest pomysł jak wykorzystać podatność… szczegóły + gotowy exploit w badaniu tutaj. Błąd został niedawno załatany.

–ms

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

Odpowiedz