W , implementacja protokołu NTP, stosowanego do synchronizacji dokładnego czasu w różnych dystrybucjach Linuxa, vulnerabilność (), pozwalająca na nadpisanie dowolnego pliku w systemie przy dostępie do lokalnego nieuprzywilejowanego użytkownika chrony. Wrażliwość może być wykorzystywana tylko przez użytkownika chrony, co zmniejsza jej zagrożenie. Niemniej jednak problem narusza poziom izolacji w chrony i może być wykorzystywany w przypadku ujawnienia innej luki w kodzie, wykonywanym po zresetowaniu uprawnień.
Wrażliwość spowodowana jest niebezpiecznym tworzeniem pliku pid, który był tworzony w etapie, gdy chrony jeszcze nie zresetował uprawnień i działał z prawami roota. W tym czasie katalog /run/chrony, do którego zapisywany jest plik pid, tworzony był z prawami 0750 przez systemd-tmpfiles lub podczas uruchamiania chronyd w powiązaniu z użytkownikiem i grupą 'chrony'. Tak więc, mając dostęp do użytkownika chrony, możliwe jest zastąpienie pliku pid /run/chrony/chronyd.pid na dowiązanie symboliczne. Dowiązanie symboliczne może wskazywać na dowolny plik systemowy, który zostanie nadpisany w momencie uruchomienia chronyd.
root# systemctl stop chronyd.service
root# sudo -u chrony /bin/bash
chrony$ cd /run/chrony
chrony$ ln -s /etc/shadow chronyd.pid
chrony$ exit
root# /usr/sbin/chronyd -n
^C
# вместо содержимого /etc/shadow будет сохранён идентификатор процесса chronyd
root# cat /etc/shadow
15287
Luka w wersji . Aktualizacje pakietów eliminujące lukę są dostępne dla . W procesie przygotowywania aktualizacji dla , i .
SUSE i openSUSE problemu , ponieważ dowiązanie symboliczne dla chrony jest tworzone bezpośrednio w katalogu /run, bez użycia dodatkowych podkatalogów.
Źródło: opennet.ru
