CVE-2026-41489
WysokieStreszczenie
Pi-hole, system DNS sinkhole, ma podatność w skryptach powłoki, które wykonują operacje na plikach z uprawnieniami roota bez walidacji ścieżek. Atakujący z uprawnieniami Pi-hole może wykorzystać tę lukę do eskalacji uprawnień do roota poprzez manipulację kluczami SSH.
Ocena ryzyka
Organizacja może być narażona na lokalną eskalację uprawnień, co może prowadzić do nieautoryzowanego dostępu do systemu i potencjalnych działań złośliwych.
Rekomendacja
Zaleca się aktualizację do wersji Core 6.4.2 i FTL 6.6.1, aby usunąć tę podatność oraz przegląd konfiguracji i uprawnień w systemie.
Inne podatności w Pi-hole
Zobacz wszystkie- CVE-2026-119336Wysokie
W Pi-hole od wersji 6.4.2 do 6.5 zadanie cron updatecheck.sh uruchamiane jako root wykonuje truncate -s 0 i chmod 644 na /etc/pihole/versions, podążając za dowiązaniami symbolicznymi w katalogu należącym do użytkownika pihole. Atakujący działający jako pihole może podstawić dowiązanie, aby obciąć lub utworzyć dowolny plik roota albo uczynić wrażliwy plik czytelnym dla wszystkich.
- CVE-2026-119335Wysokie
W Pi-hole przed wersją 6.5 funkcja getFTLPID() w utils.sh waliduje plik /run/pihole-FTL.pid za pomocą expr, odrzucając tylko wartości, których pierwszy znak nie jest cyfrą. Atakujący z kodem wykonawczym jako pihole może zapisać wyrażenie arytmetyczne zaczynające się od cyfry, które jest następnie ewaluowane przez Bash jako root, umożliwiając wykonanie podstawienia poleceń.
- CVE-2026-119334Niskie
W Pi-hole w wersjach przed 6.5 skrypt gravity.sh sprawdza czytelność adlist z prefiksem file:// za pomocą sudo -u pihole test -r, ale następnie pozwala curl (czasem uruchamianemu jako root) znormalizować segmenty ścieżki URL i otworzyć inny plik. W rezultacie przygotowany przez atakującego plik-pułapka czytelny dla użytkownika pihole może przejść weryfikację, podczas gdy curl odczyta plik dostępny tylko dla roota; podobnie ścieżki /proc/self mogą wskazywać na różne procesy.
- CVE-2026-50130Wysokie
Podatność w Pi-hole od wersji 6.0 do 6.4.2 umożliwia użytkownikowi z wykonaniem kodu jako nieuprzywilejowany użytkownik pihole eskalację uprawnień do roota poprzez podmianę pliku /etc/pihole/logrotate. Plik ten jest następnie przetwarzany przez skrypt pihole-FTL-prestart.sh, który nadaje mu własność root:root, a następnie wykonywany jako root przez codzienny cron flush, co pozwala na uruchomienie dowolnego kodu z uprawnieniami administratora.
Oryginalny opis (angielski, źródło NVD)
Pi-hole is a DNS sinkhole that protects devices from unwanted content without installing any client-side software. From 6.0 to before Core 6.4.2 and FTL 6.6.1, two shell scripts executed as root by systemd (pihole-FTL-prestart.sh and pihole-FTL-poststop.sh) read the files.pid path from this config without validation and use it in privileged file operations (install and rm -f). By writing an arbitrary path into files.pid, an attacker with pihole privilege can cause root to delete and then recreate any file on the system outside the ProtectSystem=full-restricted directories, gaining write access to it. On a default Pi-hole installation this yields local privilege escalation to root via SSH authorized keys manipulation. If /root/.ssh/authorized_keys does not exist (default on fresh installs), only ExecStartPre is required. If the file exists, ExecStopPost deletes it first, and the same restart triggers both hooks in sequence. This vulnerability is fixed in Core 6.4.2 and FTL 6.6.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

