Portál AbcLinuxu, 11. května 2025 10:05
su
z GNU coreutils (ta je v Linuxu nejrozšířenější) s žádnou skupinou wheel
nepracuje.
Pokud chcete šťourat v detailech, máte to mít: ani když si něco nastavíte v konfiguraci PAM, příkaz su
ke skupině wheel
žádným zvláštním způsobem nepřihlíží.
Ale budiž, napíšu to jinak: u většiny linuxových distribucí v defaultním nastavení může příkaz su
používat i ten, kdo není členem skupiny wheel
.
pam_wheel.so
, tak jsem si říkal, že ten by to mohl zařizovat.
# cat /etc/shadow | grep -v '[!||*]'
# passwd root
Muze uzivatel s pravama roota zmenit rootoj heslo.
Pokud "rootoj" mělo znamenat "rootovi", pak samozřejmě ano. Bylo by nelogické, pokud by zrovna root měl být jediný uživatel, který si nesmí změnit své heslo…
/etc/passwd
dvě položky se stejným UID, neměl byste si představovat, že se jedná o dva uživatele. Ve skutečnosti je to spíš jeden uživatel, který se může přihlašovat pod dvěma jmény (a se dvěma hesly). Např. proces nemá možnost, jak zjistit, pod kterým z těch jmen jste se přihlásil, pouze může pomocí getuid()
zjistit UID, vlastníci souborů ve filesystému jsou evidování jako UID atd. Naopak, proces může běžet (nebo soubor být vlastněn) i s UID, které se v tabulce /etc/passwd
vůbec nevyskytuje.
Uživatele máš v souboru /etc/passwd.A nebo taky ne.
Taky vedle. Uživatelé nemusí být pouze v souborech (# cat /etc/shadow | grep -v '[!||*]'
man nsswitch.conf
).
Zjistit všechny uživatele v systémových databázích můžete např. příkazem
getent passwd(v Gentoo je součástí balíčku
glibc
, takže předpokládám, že bude k dispozici téměř všude)
getent passwd
píše uid
uživetele do třetího sloupečku, takže všechny uživatele s uid=0
vypíšete třeba příkazem
getent passwd | awk -F: '$3 ~ /^0$/'Uživatele, kteří nejsou
root
vymažte, rootovi změňte heslo. Změňte všem uživatelům, o kterých nevíte jistě, že je to účet lidského uživatele, shell na /bin/false
. Zkontrolujte, zda nějaký uživatel nemá povoleno su
na roota bez hesla, nebo nemá povolené spouštění nějakých "nebezpečných" programů přes sudo
. Zkontrolujte setuid
programy – zda to jsou jen ty, které to mají být.
Každopádně to ale bude těžká práce, protože jestli nevíte ani který uživatel vytvořený v systému k čemu je, budete těžko poznávat, co je správně a co bylo změněno.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.