Luka w chronie

В chroniczny, implementacja protokołu NTP służącego do synchronizacji dokładnego czasu w różnych dystrybucjach Linuksa, zidentyfikowane słaby punkt (CVE-2020-14367), co pozwala na nadpisanie dowolnego pliku w systemie z dostępem do lokalnej chronologii użytkownika nieuprzywilejowanego. Lukę można wykorzystać wyłącznie poprzez ochronę użytkownika, co zmniejsza jej niebezpieczeństwo. Jednak problem narusza poziom izolacji w chrony i może zostać wykorzystany, jeśli w kodzie wykonywanym po zresetowaniu uprawnień zostanie zidentyfikowana inna luka.

Luka wynika z niebezpiecznego utworzenia pliku pid, który powstał na etapie, gdy chrony nie miał jeszcze zresetowanych uprawnień i działał jako root. W tym przypadku katalog /run/chrony, w którym zapisywany jest plik pid, został utworzony z uprawnieniami 0750 poprzez systemd-tmpfiles lub podczas uruchamiania chronyd w powiązaniu z użytkownikiem i grupą „chrony”. Zatem jeśli masz dostęp do chrony użytkownika, możliwe jest zastąpienie pliku pid /run/chrony/chronyd.pid dowiązaniem symbolicznym. Dowiązanie symboliczne może wskazywać dowolny plik systemowy, który zostanie nadpisany po uruchomieniu chronyd.

root# systemctl zatrzymaj chronyd.service
root# sudo -u chrony /bin/bash

chrony$ cd /run/chrony
chrony$ ln -s /etc/shadow chronyd.pid
wyjście z chrony$

root# /usr/sbin/chronyd -n
^C
# zamiast zawartości /etc/shadow zostanie zapisany identyfikator procesu chronyd
root # kot /etc/shadow
15287

Słaby punkt wyłączony w problemie chronologia 3.5.1. Dostępne są aktualizacje pakietów naprawiających lukę Fedora. W trakcie przygotowywania aktualizacji dla RHEL, Debian и Ubuntu.

Problem z SUSE i openSUSE nie podatny, ponieważ dowiązanie symboliczne do chrony jest tworzone bezpośrednio w katalogu /run, bez użycia dodatkowych podkatalogów.

Źródło: opennet.ru

Dodaj komentarz