Minipříhoda: Permission denied pro roota aneb jak si Wireshark myslí, že je chytřejší než uživatel

9. 9. 2022 8:50 (aktualizováno) Daniel Novotný

Jak se vám tak může stát, že rootovi zahlásí Linux „permission denied“ a není tam ani SELinux ani AppArmor? Měl jsem v podadresáři skript na odchytávání paketů přes wireshark, ale pak jsem měl všechny skripty v /root, tak jsem ho dal do /root, pustím ho a Wireshark hlásí, že nemůže zapisovat do výstupního souboru:

tshark: The file to which the capture would be saved („dump.cap“) could not be opened: Permission denied.

cožeto? a pak si všimnu, že adresář „/root“ nemá „w“ ani pro vlastníka a dosud to nevadilo, protože rootovi se samozřejmě práva nekontrolují, jen Wireshark si myslí, že může být chytřejší než uživatel, ocheckuje práva a skončí, takže po přidání „w“ na /root to začalo chodit

edit: tak jsem byl na jednom fóru upozorněn, proč to wireshark tak dělá: on totiž může být setuid a proto kontroluje práva, i když běží jako root. záhada vysvětlena

Disclaimer: je to testovací virtuálka bez zákaznických dat, takže o bezpečnost zde nejde.

Sdílet