Setuid / Setgid: Difference between revisions
Line 22: | Line 22: | ||
|} | |} | ||
Antud käsuga anti igale kasutajale õigus muuta enda parooli. Parooli muutes | Antud käsuga anti igale kasutajale õigus muuta enda parooli. Parooli muutes käivitatakse passwd faili juurkasutaja (root) õigustega. | ||
Tulemus: | Tulemus: | ||
Line 81: | Line 81: | ||
{|style="background:lightyellow;width:300px;margin:3px;border:1px solid lightgrey" align=centre | {|style="background:lightyellow;width:300px;margin:3px;border:1px solid lightgrey" align=centre | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 4775 kaust/failinimi | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 4775 kaust/failinimi | ||
|} | |||
Tulemus: | |||
{|style="background:lightyellow;width:1000px;margin:3px;border:1px solid lightgrey" | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ls -l /kaust/failinimi/ | |||
-rw'''s'''rwxr-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ | |||
|} | |} | ||
Line 86: | Line 92: | ||
{|style="background:lightyellow;width:300px;margin:3px;border:1px solid lightgrey" align=centre | {|style="background:lightyellow;width:300px;margin:3px;border:1px solid lightgrey" align=centre | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 0775 kaust/failinimi | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 0775 kaust/failinimi | ||
|} | |||
Tulemus: | |||
{|style="background:lightyellow;width:1000px;margin:3px;border:1px solid lightgrey" | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ls -l /kaust/failinimi/ | |||
-rw'''x'''rwxr-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ | |||
|} | |} | ||
Line 94: | Line 106: | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 2775 kaust/failinimi | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 2775 kaust/failinimi | ||
|} | |} | ||
Tulemus: | |||
{|style="background:lightyellow;width:1000px;margin:3px;border:1px solid lightgrey" | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ls -l /kaust/failinimi/ | |||
-rwxrw'''s'''r-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ | |||
|} | |||
* eemaldamiseks: | * eemaldamiseks: | ||
{|style="background:lightyellow;width:300px;margin:3px;border:1px solid lightgrey" align=centre | {|style="background:lightyellow;width:300px;margin:3px;border:1px solid lightgrey" align=centre | ||
Line 99: | Line 118: | ||
|} | |} | ||
Tulemus: | |||
{|style="background:lightyellow;width:1000px;margin:3px;border:1px solid lightgrey" | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ls -l /kaust/failinimi/ | |||
-rwxrw'''x'''r-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ | |||
|} | |||
Line 106: | Line 130: | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 6775 kaust/failinimi | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 6775 kaust/failinimi | ||
|} | |} | ||
Tulemus: | |||
{|style="background:lightyellow;width:1000px;margin:3px;border:1px solid lightgrey" | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ls -l /kaust/failinimi/ | |||
-rw'''s'''rw'''s'''r-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ | |||
|} | |||
* eemaldamiseks: | * eemaldamiseks: | ||
{|style="background:lightyellow;width:300px;margin:3px;border:1px solid lightgrey" align=centre | {|style="background:lightyellow;width:300px;margin:3px;border:1px solid lightgrey" align=centre | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 0775 kaust/failinimi | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | chmod 0775 kaust/failinimi | ||
|} | |} | ||
Tulemus: | |||
{|style="background:lightyellow;width:1000px;margin:3px;border:1px solid lightgrey" | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" | ls -l /kaust/failinimi/ | |||
-rw'''x'''rw'''x'''r-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ | |||
|} | |||
== Failide leidmine millele on määratletud Setuid või Setgid: == | == Failide leidmine millele on määratletud Setuid või Setgid: == |
Revision as of 01:24, 7 December 2016
Autor
Martin Abel A41
Sissejuhatus
Setuid / SUID (set user id) on kasutajapõhine õiguste bit. Setuid-ga antakse kasutajale õigus käivitada programm / fail omanikuõigustega. Setgid / SGID (set group id) on grupipõhine õiguste bit. Setgid-ga antakse gruppi kuuluvale kasutajale õigused käivitada programm / fail omanikugrupi õigustega.
Setuid ja Setgid lisamine
Setuid ja Setgid õiguseid jagatakse chmod käsuga. Setuid ja Setgid saab määratleda nii loabittide (numbrite kujul). Loetavas formaadis (r - read, w - write, x - execute), kus: u - user(omanik); g - group(grupp); o - other(teised kasutajad); a - all(kõik: omanik, grupp kui ka teised kasutajad.) Setuid-i saab määrata ainult omanikuõigustele (u.) Setgid-i saab määrata ainult grupiõigustele (g.)
Näited:
Loetavas formaadis:
- Setuid lisamine:
chmod u+s /usr/bin/passwd |
Antud käsuga anti igale kasutajale õigus muuta enda parooli. Parooli muutes käivitatakse passwd faili juurkasutaja (root) õigustega.
Tulemus:
ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 0 2016-11-28 02:46 /usr/bin/passwd |
Vaatamaks kas failil on Setuid määratletud, kasutatakse käsku ls -l. „s“ bit näitab kasutajaõigustes Setuid määratletust.
- Setuid eemaldamine:
chmod u-s /usr/bin/passwd |
Tulemus:
ls -l /usr/bin/passwd
-rwxr-xr-x 1 root root 0 2016-11-28 02:46 /usr/bin/passwd |
Antud käsuga eemaldati kasutajatelt õigus muuta enda parooli. Ainult juurkasutaja (root) saab parooli muuta, sest tal on ainsana kirjutamis (write) õigus. „x“ bit näitab käivitamis (execute) õigust.
- Setgid lisamine:
chmod g+s sbin/netreport |
Tulemus:
ls -l /sbin/netreport
-rwxr-sr-x 1 root root 0 2016-11-28 02:46 /sbin/netreport |
„s“ bit näitab grupiõigustes Setgid määratletust. Kõik kasutajad käivitavad netreport faili juurgrupi (root) õigustega.
- Setgid eemaldamine:
chmod g-s sbin/netreport |
Tulemus:
ls -l /sbin/netreport
-rwxr-xr-x 1 root root 0 2016-11-28 02:46 /sbin/netreport |
Kõik kasutajad käivitavad netreport faili vastavalt enda õigustele või gruppi kuuluvusele.
Loabittide formaadis (numbrite kujul):
Setuid määramiseks tuleb loabittide ette kirjutada 4 ja õigusbitid(775) järgi. Kus (775) on faili omanikul r,w,x õigused; (775) grupil r,w,x õigused ja (775)teistel kasutajatel r,x õigused. Read - 4; Write - 2; Execute 1 => rwx=4+2+1=7 ja rx=4+1=5
Näiteks soovime anda failile Setuid:
- lisamiseks:
chmod 4775 kaust/failinimi |
Tulemus:
ls -l /kaust/failinimi/
-rwsrwxr-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ |
- eemaldamiseks:
chmod 0775 kaust/failinimi |
Tulemus:
ls -l /kaust/failinimi/
-rwxrwxr-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ |
Setgid määramiseks tuleb loabittide ette kirjutada 2, sama põhimõte nagu ka Setuid-lgi.
- lisamiseks:
chmod 2775 kaust/failinimi |
Tulemus:
ls -l /kaust/failinimi/
-rwxrwsr-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ |
- eemaldamiseks:
chmod 0775 kaust/failinimi |
Tulemus:
ls -l /kaust/failinimi/
-rwxrwxr-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ |
Setuid ja Setgid määramiseks tuleb kasutada loabitti 6.
- lisamiseks:
chmod 6775 kaust/failinimi |
Tulemus:
ls -l /kaust/failinimi/
-rwsrwsr-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ |
- eemaldamiseks:
chmod 0775 kaust/failinimi |
Tulemus:
ls -l /kaust/failinimi/
-rwxrwxr-x 1 root root 0 2016-11-28 02:46 /kaust/failinimi/ |
Failide leidmine millele on määratletud Setuid või Setgid:
- Setuid:
find / -type f -perm /4000 |
- Setgid:
find / -type f -perm /2000 |
- Setgid + Setuid:
find / -type f -perm /6000 |
Kokkuvõte
Setuid on kasulik õiguste jagamise viis konkreetsetele failidele. Tavakasutajale ei pea andma näiteks juurkasutaja õiguseid, et kindlates failides teha muudatusi. Setuid võimaldab jagada kasutajaõiguseid paindlikumalt ilma turvariski tõstmata. Setgid on kasulik grupi õiguste jagamise viis konkreetsele failile ilma faili omanikugruppi muutmata. Võimaldab jagada grupile õiguseid paindlikumalt ilma turvariski tõstmata.
Kasutatud kirjandus:
- http://linuxg.net/how-to-set-the-Setuid-and-Setgid-bit-for-files-in-linux-and-unix/
- https://docs.oracle.com/cd/E19683-01/816-4883/secfile-69/index.html
- http://thegeekdiary.com/what-is-suid-sgid-and-sticky-bit/
- http://www.codecoffee.com/tipsforlinux/articles/028.html
- http://kuutorvaja.eenet.ee/kasutamine/os/failioigused.html
- http://linoxide.com/how-tos/stickbit-suid-guid/