Lenne egy kis vita, amiben kérném segítségeteket.
Lenne egy file aminek legyen rwsrwsrw root:root jogosultsága.
Egyes vélemények szerint ez a létező legnagyobb biztonsági rés a rendszerben, mivel bárki ezután bármit belemásolva azt tehet a rendszerrel, amit akar.
Másik vélemény, ha bárki belemásol bármit a file-ba egyből megszűnik az "s" bit és áttérünk rwxrwxrwx jogosultsággá, ami a rendszerre nézve nem veszélyes, ha ezt root nem futtatja le.
A vita a set uid bit-re van kiélezve, nem ha a root is lefuttatja gondolatra.
Kérdés: Lehet e úgy belemásolni nem root-ként, hogy az "s" bit megmaradjon?
- 1228 megtekintés
Hozzászólások
Kipróbáltam, nálam a második valósult meg, azaz elmúlt a setuid bit. Ha hozzáfűztem 2 byte-ot - append -, akkor is elmúlt.
tr [:lower:] [:upper:] <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
Kiegészítve locsemege írását.
"Lehet e úgy belemásolni nem root-ként, hogy az "s" bit megmaradjon?"
Igen, meg lehet oldani, hogy a setuid/setgid bit megmaradjon, tekintve hogy a file-nak adhatsz a kérdésben megadott jogot.
Példa:
# echo foo >bar
# chmod 6776 bar
# ls -l bar
-rwsrwsrw- 1 root root 4 Nov 18 11:52 bar
#
$ sed -i 's/foo/FOO/' bar
$ ls -l bar
-rwsrwsrw- 1 juzer juzer 4 Nov 18 11:52 bar
$
Persze a sed egy ideiglenes file-ba dolgozik, és a végén annak jogait módosítja fchmod()-dal és fchown()-nal (ha lenne rá joga), majd nevezi át rename()-mel.
Az utolsó sorból látszik, hogy nem volt teljes a kérdés megfogalmazása. Ugyanis a kérdés nem kötötte ki, hogy a file maradjon a root tulajdonában. Tehát setuid van, csak éppen már másra vonatkozik. (Ezt demonstrálni elég lett volna egy sima chmod, de így szemléletesebb.)
- A hozzászóláshoz be kell jelentkezni