I , implementering af NTP-protokollen, der bruges til at synkronisere præcise tid i forskellige Linux-distributioner, sårbarhed (), der giver mulighed for at overskrive enhver fil i systemet, hvis man har adgang til den lokale ikke-privilegerede bruger chrony. Sårbarheden kan kun udnyttes via brugeren chrony, hvilket mindsker dens fare. Ikke desto mindre kompromitterer problemet niveauet af isolation i chrony og kan udnyttes i tilfælde af, at en anden sårbarhed findes i koden, der udføres efter nedtrapning af privilegier.
Sårbarheden skyldes usikkert oprettelse af pid-fil, som blev oprettet på et tidspunkt, hvor chrony endnu ikke havde nedtrappet privilegierne og kører med root-rettigheder. Herudover blev katalogen /run/chrony, hvor pid-filen skrives, oprettet med rettighederne 0750 gennem systemd-tmpfiles eller ved opstart af chronyd tilknyttet brugeren og gruppen 'chrony'. Dermed, når man har adgang til brugeren chrony, er der mulighed for at erstatte pid-filen /run/chrony/chronyd.pid med et symbolsk link. Det symbolske link kan pege på enhver systemfil, som vil blive overskrevet, når chronyd startes.
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
Sårbarhed i versionen . Opdateringer af pakker, der udbedrer sårbarheden, er tilgængelige for . Under forberedelsen af opdateringen til , og .
SUSE og openSUSE problemet , da det symbolske link for chrony oprettes direkte i katalogen /run, uden anvendelse af yderligere underkataloger.
Kilde: opennet.ru
