NFsec Logo

systemd v228, screen root exploit i globalne problemy z setuid

27/01/2017 w Bezpieczeństwo 1 komentarz.

Sebastian Krahmer z SUSE Security Team odkrył lokalny exploit w systemd v228. Przez ten błąd użytkownik znajdujący się w podatnym systemie jest w stanie podnieść swoje uprawnienia do roli administratora. Patrząc na sedno błędu z wysokiego poziomu proces ten jest dość prosty:

1) Systemd używa wartości -1 do reprezentacji nieprawidłowej wartości mode_t (praw dostępu do systemu plików)
2) Przez przypadek wartość ta jest przekazywana podczas tworzenia (open) nowego pliku, co w rezultacie dawało nam plik z ustawionymi wszystkimi bitami dostępu: globalny zapis, globalne wykonanie i najgorsze: setuid dla root.
3) Atakujący może nadpisać ten plik dowolnym programem, ponieważ jest dostępny do zapisu dla wszystkich.
4) Atakujący może wykonać ten plik z wgranym programem, ponieważ jest dostępny do wykonania dla wszystkich.
5) Atakujący wykonuje program z prawami administratora, ponieważ plik posiada setuid dla root.
[ czytaj całość… ]