M 4.247 Windowsi klientoperatsioonisüsteemide piiratud kasutajaõigused


Algatamise eest vastutavad: infoturbe spetsialist
Rakendamise eest vastutavad: administraator, kasutaja

Windowsiga seotud volitusi saab välja jagada järgmistele valdkondadele:
  • failisüsteem,
  • sisselogimine,
  • süsteemivolitused ja kasutajavolitused,
  • volitused ühiskasutusse antud ressursside kasutamiseks,
  • failide, skriptide ja installatsioonide käivitamise volitused;
  • terviklusastmed.
Kõik volitused tuleb välja jagada võimalikult suurte piirangutega, toetudes nn Need-to-know- ehk Least-Privilege- strateegiale (vt lisaks M 4.149 Windows'i faili- ja ühiskasutusõigused). See kehtib eranditult kõikide valdkondade kohta, mille jaoks on võimalik väljastada volitusi. Rakendada tuleb Windowsi juurutamise eeltööna välja töötatud volituste kontseptsiooni (vt M 2.325 Windows Vista ja Windows 7 turvapoliitika kavandamine). Üldkehtiva soovituse kohaselt tuleks vältida volituste andmist üksikute kasutajate kaupa, kuna selle tagajärjel tekib liiga keeruline ja ebaülevaatlik volituste struktuur, mis võib osutuda vastuvõtlikuks väärkonfiguratsioonidele. Volituste väljajagamine peaks võimalusel toimuma eranditult gruppide baasil. Niimoodi tuleb enamik volitusi välja jagada ainult üks kord ja töö käigus vajalikud konfigureerimistööd tehakse grupikuuluvuse alusel. Allolevad soovitused kehtivad ülaltoodud valdkondade kohta.

Failisüsteem ja register
Turvagruppi „Everyone” ei tohiks kasutada. Süsteemiketta, enamasti C:-ketta puhul ei tohiks mitte ühegi eelinstallitud failikausta lisada turvagruppi „Authenticated users”. See grupp tuleks eemaldada ka juurkataloogi turvaseadistustest. Turvagrupile „Everyone” antakse nii Windowsis kui ka teistes tarkvarades sageli süsteemiketta osa kaustade jaoks kirjutamisõigus, seda eriti kataloogis C:\ProgramData. Selline seadistus võimaldab teatud anonüümseid võrgujuurdepääse ja skriptioperatsioone, mida pole enamasti üldse tarvis, kuid mis kujutavad endast ohtu. Seetõttu tuleks selline kirjutamisõigus tagantjärele alamkaustadest eemaldada. Asjakohaste kaustade leidmiseks saab kasutada näiteks tarkvaratööriista AccessChk.

Kui tervikluse või konfidentsiaalsusega seotud turbenõuded on suured või väga suured, tuleks installida vaid selline tarkvara, mis ühildub terviklustasandite (Integrity Level), kataloogistruktuuri ning Windows Vista ja Windows 7 standardsete piiratud volitustega. Lisateavet selle kohta saab kas tootjatelt või Microsoftist. Lisaks on soovitatav erinevate rakenduste jaoks defineerida eraldiseisvad grupid. Gruppide otstarbe alusel tuleb seejärel registris ja failisüsteemis välja jagada ka tarkvara ja andmete pääsuõigused. Piirangute väljatöötamiseks on tarvis luua ülevaade mitte ainult süsteemi, vaid ka rakenduste eripära kajastavatest kataloogidest ja failidest. Kui konfidentsiaalsus- või terviklusnõuded on väga suured, tuleks süsteemikataloogides, muudes süsteemiketta kataloogides ja registrivõtmetes desaktiveerida standardvolituste pärimisfunktsioon, et programmifailidele ja -andmetele saaks väljastada konkreetsed eraldi volitused. Turvagrupid „Authorized users” ja „Administrators” tuleb sel juhul eemaldada ning asendada eraldi kasutajakontodega. Tavapärasest suuremate turbenõuete korral tuleks eraldi kasutajakontosse ümber tõsta ka kõik kasutajasisestused, mis ei ole seotud Systemi või TrustedInstalleri nimeliste kaustade, failide ja võtmetega. Nii välistatakse teistest, juba kompromiteerimise ohvriks langenud kontodest toime pandavad ründed. Samas on suur oht, et volituste andmisel tehtud vea tõttu võib terve süsteem muutuda nii kasutuskõlbmatuks, et seda ei õnnestu enam parandada. Seega on protsessiga kaasnev suur arendus- ja katsetustööde maht õigustatud üksnes väga suurte turbenõuete korral. Et tuvastada kõrvalekaldeid kataloogistruktuurides ja registris kajastuvate volituste vahel, saab kasutada kolmandate tootjate analüüsitööriistu, nt AccessChk.

Terviklusastmed
Windows Vista ja Windows 7 ühilduvusrežiimi (Compatibility Mode), Microsofti Application Compatibility Toolkiti ning osa .NET-l põhinevate kolmandate tootjate lahenduste kasutamine võib suurendada rakendusprotsesside terviklusastet (vt M 4.341 Tervikluse kaitse alates Windows Vista). Suurte ja väga suurte turbevajaduste korral tuleks selliste rakenduste kaitsmiseks käitada neid täiesti eraldi, st isoleeritud klientides, et välistada teiste rakenduste paralleelne kasutamine. Kui see ei ole töökorralduse seisukohalt võimalik, on soovitatav süsteemifaile ja -andmeid kaitsta piirangutega, mida kirjeldatakse lõigus „Failisüsteem ja register”. Suurte ja väga suurte turbenõuete puhul tuleks tõkestada selliste komponentide käivitamine, mis võiksid terviklusastmetest üle hüpata. Siia kuuluvad näiteks Windows Installer, Windowsi tarkvara ühilduvusrežiim ning kasutajaliideseid juhtivad ja salvestavad funktsioonid (Snipping-Tool, Remote Assistance, VNC, Makro Recorder). Sellised komponendid kehtestavad süsteemiomaduse UIAccess=TRUE. Lisateavet saab tarkvara tootja käest. Samas tuleb arvestada, et kui näiteks Windows Installer on desaktiveeritud, ei saa installida ei tarkvara ega ka värskendusi. Suurte ja väga suurte turbenõuete korral võib olla lisameetmena mõistlik käivitada programmide teatud osi üksnes madalas terviklusastmes. Näiteks saab käsuga icacls java.exe / setintegritylevel low teadmata allikast pärit java-programme käivitada üksnes madalas terviklusastmes. Samas tuleb tõdeda, et sedalaadi piirangute kehtestamine eeldab rakenduse suuremahulisi kohandamis- ja katsetustöid. Programmipõhiste volituste ja terviklusastmete kohandamist aitavad lihtsustada kolmandate tootjate tarkvaralahendused.

Süsteemi- ja kasutajavolitused
Windows Vista ja Windows 7 puhul tuleks suurte ja väga suurte turbenõuete korral aluseks võtta seadistused, mida kajastataks Microsofti dokumentatsioonis pealkirjaga „Specialized Security – Limited Functionality (SSLF)”. Asjakohased dokumendid on olemas internetis ja neid pakutakse Microsoft Techneti levituskanali kaudu. Erinevalt pealkirjas sisalduvast sõnast specialized saab neid dokumente siiski laialdaselt kasutada, eeldusel et samal ajal ei kasutata ühtki vanemat Windowsi tarkvara ning kogu ülejäänud kasutatav tarkvara ühildub Windows Vista või Windows 7-ga probleemivabalt. Kui seadistustes kehtestatakse veelgi suuremad piirangud, tuleks neid mõnes väljavalitud klientsüsteemis esmalt mõni nädal katsetada, et kontrollida, kas koostöö süsteemi- ja võrguhalduse ning erialarakenduste vahel toimib piisavalt hästi. Tootmisprotsesside puhul tuleks kõik süsteemivolitused tööle rakendada domeenikontrolleri ja grupipoliitikatega. Mitte ühegi süsteemivolituse seadistusväärtus ei tohi olla konfigureerimata. Vastasel korral on seda võimalik mis tahes lokaalsete administraatoriõigustega konto alt manipuleerida. Teavet mõningate oluliste seadistuste kohta, mis väljuvad SSLF-i piiridest, leiate asjakohase mooduli kasutamist selgitavate abimaterjalide hulgast.

Klient-server-võrkude ja koduvõrkude ühiskasutusse lubamise volitused
Ühiskasutusse lubamist võimaldavaid volitusi ei tohiks anda integreeritud süsteemigruppidele „Authorized users” ega ka grupile „Everyone”. Samuti on soovitatav desaktiveerida klientides kõik lokaalsed kasutajakontod ja kasutada nende asemel üksnes Kerberosega autentimisel põhinevaid domeenikontosid. Kodukasutajagruppide funktsioon Homegroups ei sobi tavapärasest suuremate turbenõuete korral (vt M 4.423 Kodugrupi funktsiooni kasutamine Windows 7-s).

Programmide, skriptide ja installimise käivitamine
Suurte ja väga suurte turbenõuete korral tuleks Windows Installer tavarežiimi jaoks desaktiveerida. Selle tagajärjel ei saa installida värskendusi (updates) ja ka suurt osa tarkvara. Desaktiveerimiseks tuleb kasutada grupipoliitikat asukohas Computer Configuration | Administrative Templates | Windows-Components | Windows Installer | Disable Windows Installer (Always).

Kontrollküsimused:
  • Kas vastav, piiranguid kehtestav kasutajaõiguste kontseptsioon on välja töötatud ja on seda rakendatud?
  • Kas volitusi jagatakse välja gruppide baasil?
  • Kas välja jagatud volituste õigsust kontrollitakse regulaarselt, näiteks pärast igat installeerimist või värskendust?
  • Kas kasutajaid on koolitatud, kuidas tuleb jagada volitusi, kui nad peavad vastutama juurdepääsude võimaldamise eest näiteks kas enda või projekti kohta käivatele andmetele?
  • Kas kõik volitused on antud piirangutega nn need-to-know või least-privilege-strateegiate järgi?
  • Kas Windowsi rakenduste jaoks on määratletud piirangutega volituste kontseptsioon ja kas seda rakendatakse?
  • Kas turvarühmalt „Igaüks” on ära võetud kirjutamisõigus süsteemikaustades?
  • Ega ei ole antud ühiskasutuse õigusi integreeritud süsteemirühmadele, nagu „Autenditud kasutajad” või „Igaüks”?
  • Kas piirangutega volitused on kooskõlastatud turvapaikade halduse ning võrgu- ja süsteemihaldusega?