Az ügyfélszámítógépek használói a chmod segédprogrammal állíthatják be a setuid (felhasználóazonosító beállítása végrehajtáskor), a setgid (csoportazonosító beállítása végrehajtáskor) és a sticky fájlmódbiteket az NTFS fájlrendszerű partíción tárolt és az NFS-kiszolgálószolgáltatással megosztott fájlokhoz vagy könyvtárakhoz. Amikor a fájlhoz vagy a könyvtárhoz ezután hozzáfér egy UNIX-alapú ügyfél, a bitekre vonatkozó szokásos szemantika lesz érvényes. Például az a végrehajtható fájl, amelynek a setuid bitje be van kapcsolva, nem a fájlt futtató felhasználó, hanem a fájltulajdonos felhasználóazonosítója (UID) alatt hajtódik végre.
Ha egy fájl setuid vagy setgid bitje be van kapcsolva, akkor általában a fájl tulajdonosa vagy csoportja arra a tulajdonos- vagy csoportazonosítóra módosul, amely alatt a fájl végrehajtásra kerül. Ha a felhasználónak nincs jogosultsága fájlok vagy könyvtárak visszaállítására, a Windows-alapú biztonsági architektúra lehetővé teszi, hogy a felhasználó egy fájl tulajdonosává váljon (ha a fájl engedélyei ezt lehetővé teszik), de a tulajdonjogot más felhasználónak nem adhatja tovább. Következésképpen ahhoz, hogy egy fájl tulajdonosát vagy csoportját a chown vagy a chgrp paranccsal egy másik tulajdonosra vagy csoportra módosíthassa, engedéllyel kell rendelkeznie a fájlok és könyvtárak visszaállítására. Alapértelmezés szerint ezt a jogosultságot a Rendszergazdák és a Biztonságimásolat-felelősök csoport kapja meg, de más csoportokhoz vagy felhasználókhoz is hozzárendelhető. Ezenkívül a chown vagy chgrp parancsot futtató felhasználó fiókjának és a tulajdonjogot átvevő felhasználónak vagy fióknak az Active Directory keresési szolgáltatásán (Active Directory Lookup) vagy a felhasználónév-leképezési szolgáltatáson keresztül megfelelően leképezettnek kell lennie.
Egyes UNIX-alapú NFS-kiszolgálók speciálisan értelmezik vagy korlátozzák a setuid, a setgid és a sticky biteket. A UNIX egyes verziói például kötelező zárolást alkalmaznak az olyan könyvtárra, amelynek setgid bitje be van kapcsolva, de nincs végrehajtási engedélye. Az NFS-kiszolgálószolgáltatás nem alkalmaz speciális értelmezéseket vagy korlátozásokat ezen bitek használatára.
Biztonsági probléma
A UNIX rendszerek setuid és setgid bitekkel kapcsolatos szokásos viselkedése okozza a UNIX rendszer egyik ismert biztonsági problémáját. A behatoló kihasználhatja a setuid és setgid bitek viselkedését, oly módon, hogy a végrehajtható fájlok egyikét felülírja egy trójai falóval, majd a végrehajtható fájlt futtatja. A végrehajtható fájl a tulajdonos, nem pedig a támadó jogosultságaival fut.
A biztonsági probléma megelőzésére a setuid és a setgid bitek alapértelmezésben le vannak tiltva, és nincsenek hatással az UID (felhasználóazonosító) és a GID (csoportazonosító) beállítására, ha a fájl vagy a könyvtár mindkét alábbi jellemzővel rendelkezik:
-
Az egyik vagy mindkét bit (setgid vagy setuid) be van kapcsolva.
-
A fájl vagy a könyvtár egy csoport által írható, egy csoport által végrehajtható, mindenki által írható vagy mindenki által végrehajtható.
Egyes vevőknek problémát okozhat ez a biztonsági intézkedés, mert eltér a UNIX megszokott viselkedésétől, bár a UNIX setuid és setgid bitjeinek megszokott viselkedése nem szerepel az NFS protokollban.
A setuid és setgid bit viselkedésének megváltoztatása
A setuid és a setgid bit viselkedésének megváltoztatásához kövesse az alábbi eljárást:
A setuid és setgid bit viselkedésének megváltoztatása |
Nyissa meg a Beállításszerkesztőt.
Állítsa be a következő beállításkulcsot:
HKEY_Local_Machine\System\CurrentControlSet\Services\NfsSvr\Parameters\SafeSetUidGidBits = (DWORD)
-
1 érték esetén a bitek a setuid és setgid biztonságosabb viselkedését használják.
-
0 érték esetén a UNIX megszokott viselkedése lesz érvényben.
-
1 érték esetén a bitek a setuid és setgid biztonságosabb viselkedését használják.