A LocalSystem fiók
2004/12/05 21:46
1378 megtekintés
A cikk már legalább egy éve nem frissült, az akkor még aktuális információk lehet, hogy mára elavultak.
A sorozatban eddig felsorolt - az összes arányában eltörpülő mennyiságű - szervízek közös tulajdonsága az volt, hogy nem a LocalSystem fiókot használták. Kezdjük el felmérni, miért ekkora sláger ez a fiók és melyek azok a szervizek, amelyek csak ezzel a hagyományos szolgáltatásfiókkal üzemelnek.

Miért hagyományos?

Azért, mert a Windows XP és a Windows Server 2003 előtt gyakorlatilag csak ez a szolgáltatásfiók létezett. A klasszikus NT-kben (ide sorolandó ebből a szempontból a Windows 2000 is) a háttérben futó szolgáltatások ennek a fióknak a "virtuálisan" határtalan jogosultságait használták. Biztonsági szempontból ez nem túl okos dolog, nyilván ezért lett néhány szolgáltatás "átállítva" a sorozat előző részeiben már tárgyalt két új - LocalService ill. NetworkService - fiókra, amelyeknek már korlátozott lehetőségeik vannak. Azonban ha jól megnézzük a szervizek listáját, azt láthatjuk, hogy túlnyomó többségük még mindig ezt a fiókot használja a Windows Server 2003-ban is, olyan alapvető fontosságúak is mint például a DHCP Server/Client, a DNS Server, az összes IIS komponens, az RRAS, vagy akár az RPC. Szinte biztosak lehetünk abban is, hogyha telepítünk egy külső programot, amely a céljai eléréséhez rendelkezik egy szervizzel, akkor az is ezt a fiókot fogja használni. Ergo, elöljáróban tekintsük át néhány fontos jellemzőjét és tulajdonságát eme fióknak, mielőtt a nevében futó szolgáltatokkal elkezdünk foglalkozni.

A LocalSystem fiókról

Ez a fiók ugyanaz, mint amelyikkel a Windows 2000-től kezdve a user módú operációs rendszer komponensek futnak, beleértve a, Session Manager-t (WindowsSystem32Smss.exe), a Win32 alrendszer processzt (Csrss.exe), a helyi biztonsági alrendszert (Lsass.exe), és a Winlogon processzt (Winlogon.exe). Mint már volt róla szó, a LocalSystem fiók eléggé "izmos" jogosultsági szempontból, a lokális rendszert tekintve sokkal erősebb mint bármelyik helyi vagy tartományi felhasználói fiók. A következő fő jellemzői miatt igaz ez az állítás:

  • A legtöbb állományhoz és regisztrációs adatbázis kulcshoz alapból teljeskörű hozzáférése van, ám ha történetesen nincs, akkor is van :D, ti. az ezzel a fiókkal futó processzek "át tudják venni" (take-ownership) az objektumok tulajdonjogát, így rögtön elérhetővé válik a hiányzó jogosultság is.
  • A fiókot használó folyamatok az alapértelmezett felhasználói profil alatt futnak (HKEY USERS.DEFAULT), ezért nincs lehetőségük elérni azokat konfigurációs beállításokat (azaz nem is hatnak rájuk) amelyeket az operációs rendszer üzemeltetője a többi felhasználói profilra kötelezően előír.
  • Ha a gép egy Windows 2000/2003 tartomány tagja, akkor ennek a fióknak további, a lokális gépen kívüli, más gépekre is kiható tulajdonságai is előtérbe kerülhetnek. Például az, hogy a fiók tartalmazza annak a gépnek a biztonsági azonosítóját (SID) amelyiken fut az adott szerviz, ezért automatikusan és probléma nélkül "hitelesítődik" ennek az azonosítónak a segítségével egy bármelyik másik gépen, amelyik ugyanabban erdőben található.- A helyi rendszergazda csoport tagja, ám jónéhány olyan priviléguma is van, amely ezen csoport többi tagjainak alapból nincs.

Nézzük néhányat az e fiók által birtokolt jogosultságok közül, amelyek nem szokványos volta miatt szeretnek a szolgáltatások ezen fiók égisze alatt futni:

  • Act As Part Of The Operating System. Magyarul az operációs rendszer részeként való működés, azaz egy processz számára lehetőség arra, hogy a rendszerben lévő bármelyik felhasználó nevében azonosíthassa magát, így hozzáférve gyakorlatilag bármelyik lokális erőforráshoz.
  • Create A Token Object. Egy hozzáférési token létrehozására szolgáló jog. Például az Active Directoryban a felhasználó hitelesítése után, a helyi biztonsági rendszer létrehoz a felhasználó számára egy tokent azaz egy olyan speciális "csomagot", amely (többek között) tartalmazza a felhasználó nevét, SID-jét és a felhasználót tartalmazó csoportok SID-jeit is. Innentől a rendszer használatának lehetőségei az ebben a tokenben tárolt információktól függnek. Ennek kreálásához megint csak kell ez az erős jogkör.
  • Log On As A Service. Jogosultságok megadása, abból a célból, hogy egy-egy felhasználói fiók egy szolgáltatás biztonsági kontextusának előnyeit élvezve léphessen be a rendszerbe. A LocalSystem fiók mindig így lép be (ezt nem is lehet megváltoztatni), azonban alapértelmezés szerint semmilyen fiók nem kapja meg ezt a lehetőséget, ezért a külön fiókot igénybe vevő alkalmazásnak kell erről a telepítés során gondoskodni, vagy ha például egy Exchange Server-t saját fiókkal futtatunk, akkor nekünk kell megadni a fióknak ezt az engedélyt a vonatkozó csoportházirendben, ezen a helyen:
  • Computer ConfigurationWindows SettingsSecuritySettingsLocal PoliciesUser Rights AssignmentCreate Permanent Shared Objects. Ez a jogosultság azt definiálja, hogy mely fiókok "gyárthatnak" címtár objektumot az Object Managerben. Alapértelmezés szerint erre csak azok a kernel módú komponensek képesek, amelyek a LocalSystem fiók biztonsági környezét használják. Ezen kívül nincs is másik fiók, amely rendelkezne ezzel a joggal.
  • Generate Security Audits. Meghatározza azon fiókokat, amelyeket használó processzek képesek a biztonsági naplóhoz bejegyzéseket hozzáadni. Ez is egy igen fontos lehetőség, gondoljunk bele, mi minden múlhat ezen bejegyzések értelmezésén. Alapból ezt is csak a LocalSystem "tudja".
  • Replace A Process Level Token. Ennek a jogosultságnak is kizárólagos tulajdonosa a LocalSystem fiók, azaz csak ennek nevében lehetséges kezdeményezni egy olyan processzt, amely kicseréli egy másik futó processz meglévő hozzáférési tokenjét.

Csatlakozz hozzánk!

Ajánljuk

European Schoolnet Academy Ingyenes online tanfolyamok tanároknak
School Education Gateway Ingyenes tanfolyamok és sok más tanárok számára
ENABLE program Program iskoláknak a bullying ellen
Jövő osztályterme Modern tanulási környezetekről a Sulineten