В , çeşitli Linux dağıtımlarında tam zamanı senkronize etmek için kullanılan NTP protokolünün bir uygulaması, güvenlik açığı (), yerel ayrıcalıksız kullanıcı kroniğine erişimi olan sistemdeki herhangi bir dosyanın üzerine yazmanıza olanak tanır. Bu güvenlik açığından yalnızca kullanıcı kroniği aracılığıyla yararlanılabilir, bu da tehlikesini azaltır. Ancak sorun, kronik izolasyon düzeyini tehlikeye atıyor ve ayrıcalıklar sıfırlandıktan sonra yürütülen kodda başka bir güvenlik açığı tespit edilirse bu sorundan yararlanılabilir.
Güvenlik açığı, chrony'nin henüz ayrıcalıkları sıfırlamadığı ve root olarak çalıştığı bir aşamada oluşturulan bir pid dosyasının güvenli olmayan şekilde oluşturulmasından kaynaklanıyor. Bu durumda, pid dosyasının yazıldığı /run/chrony dizini, systemd-tmpfiles aracılığıyla 0750 haklarıyla veya "chrony" kullanıcı ve grubuyla birlikte chronyd başlatıldığında oluşturuldu. Böylece, chrony kullanıcısına erişiminiz varsa, /run/chrony/chronyd.pid pid dosyasını sembolik bir bağlantıyla değiştirmek mümkündür. Sembolik bir bağlantı, chronyd başlatıldığında üzerine yazılacak herhangi bir sistem dosyasına işaret edebilir.
root# systemctl chronyd.service'i durdur
root# sudo -u chrony /bin/bash
chrony$ cd /run/chrony
chrony$ ln -s /etc/shadow chronyd.pid
chrony$ çıkışı
kök# /usr/sbin/chronyd -n
^C
# /etc/shadow içeriği yerine chronyd işlem kimliği kaydedilecek
root# kedi /etc/shadow
15287
Güvenlik açığı söz konusu . Güvenlik açığını gideren paket güncellemeleri şu kullanıcılar için mevcuttur: . için bir güncelleme hazırlama sürecinde , и .
SUSE ve openSUSE sorunu chrony için sembolik bağlantı ek alt dizinler kullanılmadan doğrudan /run dizininde oluşturulduğundan.
Kaynak: opennet.ru
