Používat sudo nebo ne?
11. 2. 2008 11:26
Jakub Šťastný
Jako každý program se superuživatelskými oprávněními, je i populární utilitka sudo bezpečnostním rizikem. Vzhledem k tomu, že však umožňuje odstupňovat systém práv mnohem jemněji než pouhé rozlišování na roota a běžné uživatele je jeho použití obvykle žádoucí. Zda se sudo vyplatí či nikoliv rozebírá Linux.com, včetně technických ukázek programu a jeho konfigurace.
čenda (neregistrovaný)
11. 2. 2008 12:31
Nový
sudo
celé vlákno
Používám sudo pro zvíšení bezpečnosti systému hlavně přede mnou samým. Provozuji pár servříků, ale i to by stačilo pro několik bezesných nocí při neuváženém použití roota. Hlavně mě to vždycky upozorní na to co dělám. Musim zadat heslo. Jinak bych klidně udělal i toto rm -r / , samozřejmě pod rootem, když bych ho někdy musel použít.
Zdenek (neregistrovaný)
11. 2. 2008 12:43
Nový
Re: sudo
celé vlákno
Ridim se heslem, dokud chodim berle nepotrebuji. A smazat si takhle server, tak si jeste budu rikat dobre mi tak :-)
Dramenbejs (neregistrovaný)
11. 2. 2008 13:45
Nový
Re: sudo
celé vlákno
Souhlasím s Váma.
Někdy ovšem sudo potřebujete, protože vývojáři kernelu odmítají rozchodit suid bit pro skripty.
Asi mají nějaké "kostlivce ve skříni".
Někdy ovšem sudo potřebujete, protože vývojáři kernelu odmítají rozchodit suid bit pro skripty.
Asi mají nějaké "kostlivce ve skříni".
still (neregistrovaný)
11. 2. 2008 14:14
Nový
Re: sudo
celé vlákno
sudo cp /bin/sh /bin/sh_suid
sudo chmod +s /bin/sh_suid
$ cat /tmp/a
#!/bin/sh_suid
rm -rf /
:-)
sudo chmod +s /bin/sh_suid
$ cat /tmp/a
#!/bin/sh_suid
rm -rf /
:-)
miro (neregistrovaný)
11. 2. 2008 15:41
Nový
Re: sudo
celé vlákno
??? To má být workaround chybějící podpory suid pro skripty? A k čemu tam je ten řádek
$ cat /tmp/a ?
still (neregistrovaný)
11. 2. 2008 15:56
Nový
Re: sudo
celé vlákno
Asi tak nejak. To cat je na znazornenie vypisu nejakeho suboru.
A btw. je to ukazka tej najvacsej bezpecnostnej diery do systemu - dovod preco sa suid pre skripty nepouziva ;-)
A btw. je to ukazka tej najvacsej bezpecnostnej diery do systemu - dovod preco sa suid pre skripty nepouziva ;-)
miro (neregistrovaný)
11. 2. 2008 21:04
Nový
Re: sudo
celé vlákno
Aha, takže když bych chtěl ve skriptu provést něco, co může jen root (např.
cat /etc/shadow, tak musí suid dostat binárka reprezentující daný shell (tedy např. /bin/bash). Hm, tak to vážně pro skripty nejde suid dost dobře použít :-) (nebo aspoň nevím jak).
still (neregistrovaný)
11. 2. 2008 21:24
Nový
Re: sudo
celé vlákno
Momentalne iba tak, alebo si mozes vytvorit inu binarku, ktora vlastne nespravi nic ine ako "cat /etc/shadow" a tej binarke nastavis suid bit a spustis ju cez ten skript.
To co som napisal vyssie je absolutne blbe pouzivat ako root, avsak pri urcitych operaciach, ktore je potrebne vykonavat ako iny uzivatel (predpokladom je co najmenej prav a vedomie moznosti spustenia inymi uzivatelmi), tak je mozne aj takyto shell vytvorit a spustat skripty ako dany uzivatel.
a inak.. pouzivat suid pre skripty je blbost uz len kvoli tomu, ze dane opravnenia neziska skript, ale interpret, ktory dany skript vykonava. A nemyslim, ze je nejaky interpert napisany tak dokladne, aby mu mohol byt prideleny suid bit (ci uz s pravami roota, alebo inymi). Pri vyvojy aplikacii, ktore budu mat dany suid bit nastaveny sa kladie maximalny doraz na bezpecnost a aby aplikacia nevykonala, co i len omylom/chybou, nieco ine, pre co povodne nebola napisana.
To co som napisal vyssie je absolutne blbe pouzivat ako root, avsak pri urcitych operaciach, ktore je potrebne vykonavat ako iny uzivatel (predpokladom je co najmenej prav a vedomie moznosti spustenia inymi uzivatelmi), tak je mozne aj takyto shell vytvorit a spustat skripty ako dany uzivatel.
a inak.. pouzivat suid pre skripty je blbost uz len kvoli tomu, ze dane opravnenia neziska skript, ale interpret, ktory dany skript vykonava. A nemyslim, ze je nejaky interpert napisany tak dokladne, aby mu mohol byt prideleny suid bit (ci uz s pravami roota, alebo inymi). Pri vyvojy aplikacii, ktore budu mat dany suid bit nastaveny sa kladie maximalny doraz na bezpecnost a aby aplikacia nevykonala, co i len omylom/chybou, nieco ine, pre co povodne nebola napisana.
miro (neregistrovaný)
11. 2. 2008 22:31
Nový
Re: sudo
celé vlákno
<cite>pri urcitych operaciach, ktore je potrebne vykonavat ako iny uzivatel (predpokladom je co najmenej prav a vedomie moznosti spustenia inymi uzivatelmi), tak je mozne aj takyto shell vytvorit a spustat skripty ako dany uzivatel</cite> - to sice ano, ale IMHO zároveň nepůjde dost dobře zabránit userům, aby si spustili přímo ten suidovaný shell a v něm pak už můžou cokoli. Takže (jestli tomu dobře rozumím) na BFU je to docela dobrý, ale pro pokročilého uživatele je to totéž, jako kdybych mu dal heslo na roota.
still (neregistrovaný)
12. 2. 2008 7:35
Nový
Re: sudo
celé vlákno
"predpokladom je co najmenej prav" - to som nemyslel najmenej prav uzivatela, ktory to bude spustat, ale uzivatela s ktoreho opravneniami sa dany shell bude spustat. suid bit nesposobuje, ze sa dany program spusta s pravami root-a, ale ze sa spusta s pravami vlastnika suboru.
Existuje zopar situacii, pri ktorych je ziadane, aby sa niektore akcie vykonavali vzdy s pravami urciteho uzivatela a aby vsetci uzivatelia mali k takymto upravam rovnaky pristup. (treba vsak velmi dobre zvazovat taketo situacie)
btw.. suid, sudo, a su - su velmi zranitelne riesenia v unixoch a preto s nimi treba narabat s najvacsou opatrnostou.
Existuje zopar situacii, pri ktorych je ziadane, aby sa niektore akcie vykonavali vzdy s pravami urciteho uzivatela a aby vsetci uzivatelia mali k takymto upravam rovnaky pristup. (treba vsak velmi dobre zvazovat taketo situacie)
btw.. suid, sudo, a su - su velmi zranitelne riesenia v unixoch a preto s nimi treba narabat s najvacsou opatrnostou.
Sten (neregistrovaný)
12. 2. 2008 1:06
Nový
Re: sudo
celé vlákno
A v tuhle chvíli klidně můžete uživatelům umožnit přihlásit se jako root bez hesla :)
Jinak samozřejmě správné řešení by bylo:
$ sudo grep /tmp/a /etc/sudoers
Password:
ALL ALL=NOPASSWD: /tmp/a
$ cat /tmp/a
#!/bin/sh
if [ "$(whoami)" != "root" ]; then
exec sudo "$0" "$@"
fi
rm -rf /
$ /tmp/a
Jinak samozřejmě správné řešení by bylo:
$ sudo grep /tmp/a /etc/sudoers
Password:
ALL ALL=NOPASSWD: /tmp/a
$ cat /tmp/a
#!/bin/sh
if [ "$(whoami)" != "root" ]; then
exec sudo "$0" "$@"
fi
rm -rf /
$ /tmp/a
pht (neregistrovaný)
11. 2. 2008 15:37
Nový
Re: sudo
celé vlákno
spravne. a pokud uz potrebuju opravdu nejaka omezeni, bezel tu pekny serial o selinuxu.
peter (neregistrovaný)
11. 2. 2008 13:01
Nový
ubuntu
celé vlákno
ked som zacal s linuxom tak som si nainstaloval Ubuntu, kde je pouzivanie sudo preferovane (resp. odporucane v roznych navodoch aj komunitou), tak som si zvykol na tento sposob a vsetko robim cez sudo.
peter (neregistrovaný)
11. 2. 2008 16:04
Nový
Re: ubuntu
celé vlákno
heh no vsetko co potrebuje root pristup :)
uživatel si přál zůstat v anonymitě
11. 2. 2008 15:17
Nový
Re: ubuntu
celé vlákno
"tak som si nainstaloval Ubuntu, kde je pouzivanie sudo preferovane (resp. odporucane v roznych navodoch aj komunitou),"
No, znam spoustu Ubuntistu, kteri pouzivaji kombinaci "sudo su" :-), coz se me osobne zda docela humorny. Proc pouzivat "su", kdyz uz samotny "sudo" me prepne do roota? Nechapu, proc se prepnout pod roota a pak jeste pod rootem spoustet "su", aby me to preplo znovu do roota? Nevim, kdo v ubuntu na tohle prisel:-) Pokud nekdo vite, poucte me, v cem je to lepsi, nez "sudo -i" (pripadne "sudo -s"). Diky.
No, znam spoustu Ubuntistu, kteri pouzivaji kombinaci "sudo su" :-), coz se me osobne zda docela humorny. Proc pouzivat "su", kdyz uz samotny "sudo" me prepne do roota? Nechapu, proc se prepnout pod roota a pak jeste pod rootem spoustet "su", aby me to preplo znovu do roota? Nevim, kdo v ubuntu na tohle prisel:-) Pokud nekdo vite, poucte me, v cem je to lepsi, nez "sudo -i" (pripadne "sudo -s"). Diky.
11. 2. 2008 16:22
Nový
Re: ubuntu
celé vlákno
Je to dobré, pokud neznáte sudo -i a sudo -s ... já jsem doteď neznal.
lazar (neregistrovaný)
11. 2. 2008 16:51
Nový
sudo su
celé vlákno
no asi proto že tam root nemá heslo, tak nevím jak by jsi chtěl použít su.
Zero (neregistrovaný)
11. 2. 2008 14:31
Nový
zijem nez sudo a je mi fajn :p
celé vlákno
Ja sudo nepouzivam a som spokojny... Ak do niecoho dojebabrem tak mam zalohu pred zmenou a pri zadavani prikazu ich este raz pre istotu skontrolujem...
Zero (neregistrovaný)
11. 2. 2008 14:32
Nový
Re: zijem nez sudo a je mi fajn :p
celé vlákno
v titulku ma byt *bez sudo :p (pre chytrakov ze som sa preklikol a pritom kontrolujem prikazy dvakrat... toto je diskusia tu to az tak kontrolovat netreba :)
petris (neregistrovaný)
11. 2. 2008 17:40
Nový
Re: zijem nez sudo a je mi fajn :p
celé vlákno
dobry je si zvyknout psat za prikazem mezeru
Zero (neregistrovaný)
12. 2. 2008 7:04
Nový
Re: zijem nez sudo a je mi fajn :p
celé vlákno
Mas na mysli nieco taketo:
iptables -L | less ???lebo presne tak zapisujem prikazy... :)
petris (neregistrovaný)
13. 2. 2008 12:24
Nový
Re: zijem nez sudo a je mi fajn :p
celé vlákno
Proste nez zmacknu enter, tak napisu mezeru. Vetsinou se stava, ze kdyz napisete blbe prikaz, tak vam to dojde se stiskem enteru, ale takhle se stiskem mezery, takze je cas si ten enter rozmyslet.
Lenin (neregistrovaný)
12. 2. 2008 1:05
Nový
Vykaslete se na sudo - RBAC
celé vlákno
Prosim vas linuxaci jdete do sebe, proc pouzivat takovou hlinu jako sudo kdyz je tu RBAC?
Oni vam do vaseho distra nedodali kernel s RBAC? Upgradujte na Solac!
Oni vam do vaseho distra nedodali kernel s RBAC? Upgradujte na Solac!

