I Windows® 7 finns en enkel mekanism för att köra användarkonton med standardprivilegier. Det behövs inga administratörsprivilegier för att utföra vanliga uppgifter, t.ex. installera en skrivardrivrutin eller ansluta till ett trådlöst nätverk. Denna grundläggande förändring innebär en högre säkerhet på operativsystemnivå genom att skadlig programvara och rootkit inte kan komma åt att skada företagets filer och inställningar.

UAC (User Account Control) baseras på säkerhetsteorin "minsta privilegium" vilket innebär att användarna ska ha absolut minsta möjliga privilegium som krävs för att utföra tilldelade uppgifter. Ändringar i Subsystem for UNIX-based Applications som är kompatibla med UAC omfattar användning av LUA (Least-privilege User Account).

UAC (User Account Control)

UAC (User Account Control) är en säkerhetsfunktion i Windows 7 som introducerades i Windows Vista.

Det huvudsakliga målet med UAC är att minska utsattheten och angreppsytan för Windows 7 genom att kräva att alla användare kör i standardanvändarläget samt genom att begränsa administratörsåtkomsten till vissa auktoriserade processer. Tack vare den här begränsningen minskar risken för att en användare ska göra ändringar som gör datorn instabil eller oavsiktligt utsätta datorn för virus via oupptäckt skadlig programvara på datorn.

Som standard kör Windows 7 alla program som standardanvändare även om den aktuella användaren är inloggad som medlem av gruppen Administratörer. När en användare försöker starta ett program som kräver administratörsbehörighet ombeds han/hon att bekräfta avsikten att starta programmet. Endast program som körs med administratörsprivilegier kan ändra systeminställningar, globala inställningar och funktioner.

Mer information om User Account Control finns i avsnittet Förstå och konfigurera UAC i Windows Vista (https://go.microsoft.com/fwlink/?LinkId=70242) på Microsofts webbplats (sidan kan vara på engelska).

User Account Control och minsta privilegium i Subsystem för UNIX-baserade program

När en Subsystem for UNIX-based Applications-användare som är medlem i gruppen Administratörer startar ett program, ett gränssnitt eller någon annan aktivitet, körs programmen i standardanvändarens säkerhetskontext.

I följande exempel visas hur User Account Control kan hindra användare i gruppen Administratörer från att utföra administrativa uppgifter utan förhöjda privilegier.

Användare A är medlem i gruppen Administratörer och vill skapa en ny katalog som heter test i rotkatalogen (/). Endast medlemmar i gruppen Administratörer kan skapa nya kataloger i rotkatalogen. LUA-begränsningarna medför i det här fallet att användare A inte kan skapa den nya katalogen trots att han/hon är medlem i gruppen Administratörer. Användare A öppnar ett Korn-gränssnitt med förhöjda privilegier och kan skapa katalogen test i roten.

I följande procedurer finns information om hur du kör ett program eller utför uppgifter med förhöjda privilegier.

Så här kör du ett program som administratör

Med Subsystem for UNIX-based Applications och tillhörande verktygspaket installerade finns det två sätt att köra ett program som administratör.

I Windows-gränssnittet

I en UNIX-baserad kommandotolk

I Windows-gränssnittet

Gör följande om du vill köra ett program som kräver administrativa privilegier i Windows-gränssnittet.

Köra ett program som administratör i Windows-gränssnittet
  1. Högerklicka på programmets körbara fil.

  2. Klicka på Kör som administratör.

I en UNIX-baserad kommandotolk

Gör följande om du vill köra ett program som kräver administrativa privilegier i den UNIX-baserade Korn-gränssnittsmiljön.

Köra ett program som administratör i ett Korn-gränssnitt
  1. Klicka på Start, Alla program , Subsystem for UNIX-based Applications och peka sedan på Korn shell.

  2. Högerklicka på Korn shell och klicka sedan på Kör som administratör.

  3. Klicka på Ja när du ombeds tillåta att gränssnittet körs som administratör.

  4. Kör programmet som kräver administratörsprivilegier.

  5. När du är klar med programmet som kräver förhöjda privilegier stänger du gränssnittssessionen.

    Om du vill utföra andra uppgifter som inte kräver administratörsprivilegier i det UNIX-baserade gränssnittet öppnar du en ny gränssnittssession utan att använda kommandot Kör som administratör.

Registernyckeln EnableSuToRoot

User Account Control är aktiverat som standard. När User Account Control är aktiverat körs alltid program som personifierar en annan användare som är medlem i gruppen Administratörer (t.ex. med hjälp av verktygen su, cron eller login, setuid eller något av familjeanropen setuid eller exec_asuser) i säkerhetskontexten för ett standardanvändarkonto.

OBS

När ett program personifierar en standardanvändare får programmet den fullständiga säkerhetskontexten för en standardanvändare. Mer information om standardanvändare finns i avsnittet "Developer Best Practices and Guidelines for Applications in a Least Privileged Environment" (https://go.microsoft.com/fwlink/?LinkId=70243) på Microsofts webbplats (sidan kan vara på engelska).

Ett program kan inte personifiera rotanvändaren om standardinställningarna används. Du kan styra detta genom att ändra registernyckeln HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SUA\EnableSuToRoot.

Så här ändrar du registernyckeln EnableSuToRoot

Viktigt!

Administratörskontot är inaktiverat som standard i Windows 7 och Windows Server 2008 R2 för att skydda att obehöriga eller saboterande användare kommer åt datorer eller data. Kontot måste aktiveras för att användare ska kunna personifiera rotanvändaren eller administratören. Eftersom administratörskontot måste vara aktiverat innan du ändrar inställningen i registernyckeln EnableSuToRoot beskrivs proceduren för att slutföra den här åtgärden nedan. För att kunna utföra den här proceduren måste du vara medlem i gruppen Administratörer på den lokala datorn.

Så här aktiverar administratörskontot
  1. Klicka på Start, högerklicka på Dator och klicka på Hantera.

  2. I hierarkifönstret i snapin-modulen Datorhantering öppnar du Lokala användare och grupper.

  3. Markera Användare.

  4. Högerklicka på Administratör i resultatfönstret och klicka sedan på Egenskaper.

  5. Avmarkera kryssrutan för alternativet Kontot är inaktivt.

  6. Klicka på OK.

  7. Stäng fönstret Egenskaper och stäng sedan snapin-modulen Datorhantering.

Utför följande steg om du vill ändra inställningen för registernyckeln EnableSuToRoot efter att du installerat Subsystem for UNIX-based Applications.

Ändra inställningen för registernyckeln EnableSuToRoot
  1. Klicka på Start, klicka i textrutan Påbörja sökning och skriv regedit. Registereditorn öppnas.

  2. I hierarkifönstret öppnar du HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SUA.

  3. Dubbelklicka på EnableSuToRoot i resultatfönstret.

  4. I rutan Data skriver du 0 om du inte vill tillåta personifiering av rotanvändaren eller 1 om du vill tillåta det.

    Standardinställningen är 0.

  5. Klicka på OK.

  6. Stäng Registereditorn och spara ändringarna om du ombeds göra det.

När nyckelvärdet är 0 (standardinställningen) tillåts inte personifiering av rotanvändaren. När värdet är 1 tillåts personifiering av rotanvändaren. När ett program personifierar rotanvändaren eller kontot Administratör får programmet den administrativa säkerhetskontexten för rotanvändaren (Administratör).

Setuid och administrativt privilegium

Om användare som är medlemmar i administratörsgruppen försöker märka program med attributet setuid fungerar det bara om de får köra program och utföra aktiviteter i en administrativ säkerhetskontext.

Här följer ett exempel på hur du kan märka den binära filen /bin/regpwd. Filen är vanligtvis märkt med attributet setuid:

  1. Öppna ett Korn-gränssnitt (ksh) med förhöjda privilegier enligt beskrivningen i det här avsnittet.

  2. Skriv chmod +s /bin/regpwd och tryck på RETUR.

  3. Skriv exit när du vill stänga ksh-sessionen.

Se även