Vita:Unix-alapok

A Unix/Linux szerverek üzemeltetése wikiből
A lap korábbi változatát látod, amilyen Stribika (vitalap | szerkesztései) 2022. január 6., 15:12-kor történt szerkesztése után volt.

(eltér) ←Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)

Soha ne csináljunk olyat, hogy 1 processzen belül 2 szálnak (pthread-es vagy CLONE_VM) eltérő jogosultságai vannak. Ilyenkor a két szál ugyanazon a memória területen osztozik, és viszonylag egyszerűen képesek átvenni egymás irányítását, pl függvény pointerek módosításával vagy mmappal lecserélve az egészet. Erre egyébként a glibc próbál figyelni, csak nem mindig sikerül neki. Például "exiting" állapotú szálakon nem lehet settelni az uidet. (Mielőtt a setXid wrappere visszatér, akár meg is várhatná, amíg tényleg végérvényesen leállnak az exiting szálak, de nem várja meg.) Ha pedig valaki syscall(2) függvénnyel hívja ezeket, akkor nyilván esélye sincs. Legjobb, ha a jogosultságok eldobása a szálak indítása előtt már kész, vagy ha teljesen külön processzeket haszálunk.

--Stribika (vita) 2022. január 6., 15:12 (CET)

Személyes eszközök