Obligatorisk integritetskontroll

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 29 december 2017; kontroller kräver 17 redigeringar .
Windows Astra Linux- komponent
Obligatorisk integritetskontroll
Komponenttyp Säkerhet
Ingår i Windows Vista , Windows 7 , Windows 8 , Windows 8.1 , Windows 10 , Astra Linux Special Edition
Service namn Obligatorisk integritetskontroll, MIC
Service beskrivning Kontrollera åtkomst till filer och processer
stat Aktiva

Mandatory Integrity Control ( MIC ) är en ny säkerhetsfunktion som introduceras i Astra Linux och Windows Vista och implementeras i nästa rad av Windows-operativsystem som lägger till åtkomstkontroll med hjälp av integritetsnivåer ( Engelska  Integrity Levels, IL ). Integritetsnivån representerar nivån av tillförlitlighet för subjektet eller tillgångsobjektet. Syftet med den här mekanismen är att använda policyer för att hantera integritets- och integritetsnivåerna för de inblandade aktörerna och objekten för att begränsa åtkomst till processer som anses vara potentiellt mindre pålitliga än betrodda processer som körs under samma användarkonto.  

Implementering

Obligatorisk integritet definieras med hjälp av en ny typ av åtkomstkontrollpost (ACE) för att representera integritetsnivån för ett objekt i dess säkerhetsdeskriptor. I Windows används åtkomstkontrollistor ( ACL ) vanligtvis för att ge åtkomsträttigheter (läs-, skriv- och exekveringsbehörigheter) till användare eller grupper. Vid initiering tilldelas en process åtkomsttoken en integritetsnivå. När en tråd försöker komma åt ett objekt (som en fil) jämför länkmonitorn integritetsnivån i processen eller trådens åtkomsttoken med integritetsnivån i objektets säkerhetsdeskriptor. Windows begränsar de tillåtna åtkomsträttigheterna beroende på om integritetsnivån för ämnet är högre eller lägre än integritetsnivån för objektet, beroende på integritetspolicyn som ställts in i Access Control Entry (ACE). Säkerhetsundersystemet använder integritetsnivåer för obligatorisk åtkomstkontroll, i motsats till diskretionär åtkomstkontroll, som implementeras med traditionella D ACL:er .

Windows Vista och senare definierar 5 IL-integritetsnivåer [ 1] :

Otillförlitlig ( SID : S-1-16-0),

Låg ( SID : S-1-16-4096),

Medium ( SID : S-1-16-8192),

Hög ( SID : S-1-16-12288)

System ( SID : S-1-16-16384).

Som standard är processer som startas av en normal användare (inklusive administratör) inställda på medelhög integritet, och processer som startas via UAC med administratörsrättigheter är inställda på hög. [2] Genom att ställa in olika integritetsnivåer tillåter obligatorisk integritetskontroll dig att isolera potentiellt sårbara applikationer (till exempel Internet -orienterade applikationer, kontorsapplikationer som används för att öppna dokument som tas emot från opålitliga källor, etc.). Processer med låga integritetsnivåer har mindre åtkomst (begränsad skrivåtkomst till systemobjekt) än processer med högre integritetsnivåer, eftersom obligatorisk (obligatorisk) åtkomstkontroll utförs av själva Windows OS .

Objekt med en ACL, till exempel namngivna objekt , inklusive filer, registernycklar eller andra processer och trådar, har en post i ACL som anger integritetsnivån för det objektet. Den definierar den lägsta processintegritetsnivån som detta objekt kan använda. Windows - objekt har som standard integritetspolicyn No-Write-Up mandat, som anger att en process endast kan skriva eller ta bort ett objekt när dess integritetsnivå är lika med eller högre än objektets integritetsnivå. [2] Därför kan en process med en låg integritetsnivå inte öppna en fil med en medelhög integritetsnivå för skrivning, även om DACL ger processen skrivbehörighet.

Processer med låg integritet kan inte heller öppna processobjekt med högre integritet för läsning eftersom processobjekt har No-Read-Up Obligatorisk Integrity Policy inställd som standard. [3] Därför kan en process inte kommunicera med en annan process som har en högre integritetsnivå. En process kan inte utföra funktioner som att injicera en dll i en process med högre integritet med hjälp av skapa fjärrtråds- API [4] eller skicka data till en annan process med hjälp av processens minnesskrivfunktion [5] .

Applikation

Även om processer ärver integritetsnivån för processen som skapade dem, kan integritetsnivån konfigureras vid den tidpunkt då processen skapas. Förutom att begränsa sändningen av fönstermeddelanden i User Interface Isolation (UIPI)-teknik, används obligatorisk integritetskontroll av applikationer som Adobe Reader , Google Chrome , Internet Explorer och "  Windows Explorer" för att isolera dokument från sårbara objekt på systemet. [ett]

Internet Explorer 7 använder inställningen Required Integrity-Based Protected Mode för att kontrollera om en webbsida öppnas som en process med låg integritet eller inte (förutsatt att operativsystemet stöder Required Integrity) baserat på säkerhetszonsinställningar, så att vissa säkerhetsklasser förhindras. sårbarheter. Eftersom Internet Explorer körs som en process med låg integritet i det här fallet kan den inte ändra objekt på systemnivå – filer och registeroperationer "virtualiseras" istället. Adobe Reader 10 och Google Chrome är två andra anmärkningsvärda applikationer som implementerar denna teknik för att minska deras sårbarhet för skadlig programvara . [6]

Microsoft Office 2010 introducerade en sandlådemiljö som heter "Protected View" för Excel , PowerPoint och Word , som förhindrar potentiellt skadliga dokument från att ändra komponenter, filer och andra resurser på systemet. [7] "Protected View" fungerar som en process med låg integritet, och i Windows Vista och senare utgåvor använder Windows obligatoriska integritetskontroller och UIPI-teknik (User Interface Isolation) för att ytterligare begränsa sandboxning . [åtta]

Men i vissa fall måste en process med en högre integritetsnivå utföra vissa åtgärder på en process med en lägre integritetsnivå, eller så behöver en process med en lägre integritetsnivå tillgång till resurser som endast en process med en högre integritetsnivå kan komma åt ( till exempel när du surfar på en webbsida i skyddat läge, sparar en fil som laddats ner från Internet till en mapp som anges av användaren). Processer med hög och låg integritet kan fortfarande kommunicera med varandra med hjälp av filer, namngivna rör, LPC:er eller andra delade objekt. Det delade objektet måste ha en låg integritetsnivå och delas av processer med både låg integritet och hög integritet. Eftersom obligatorisk integritet inte hindrar en process med låg integritet från att dela objekt med en högre integritetsprocess, kan den utnyttja sårbarheter i den och tvinga den att köra för egen räkning, vilket leder till en Squatting-attack. Emellertid kan " omstörtande attacker " förhindras genom att använda privilegieisolering av användargränssnittet , vilket drar fördel av obligatorisk integritetskontroll.

Se även

Anteckningar

  1. ↑ 12 Matthew Conover . "Windows Vista Security Model Analysis" (engelska) (länk ej tillgänglig) . symantec. . Symantec Corporation. Hämtad 29 december 2017. Arkiverad från originalet 16 maj 2008.   
  2. ↑ 1 2 Obligatorisk integritetskontroll i Windows Vista  , Steve Riley om säkerhet . Arkiverad från originalet den 29 september 2007. Hämtad 29 december 2017.
  3. PsExec, Användarkontokontroll och säkerhetsgränser  , Marks blogg . Arkiverad från originalet den 15 april 2010. Hämtad 29 december 2017.
  4. CreateRemoteThread-funktion (Windows  ) . msdn2.microsoft.com. Hämtad 29 december 2017. Arkiverad från originalet 23 oktober 2007.
  5. WriteProcessMemory-funktion (Windows  ) . msdn2.microsoft.com. Hämtad 29 december 2017. Arkiverad från originalet 8 oktober 2007.
  6. ↑ Vi introducerar Adobe Reader Protected  Mode . blogs.adobe.com. Hämtad 29 december 2017. Arkiverad från originalet 11 december 2013.
  7. ↑ Inställningar för Planskyddad vy för Office  2010 . technet.microsoft.com. Hämtad 29 december 2017. Arkiverad från originalet 2 februari 2017.
  8. Keizer, Gregg . Microsoft struts Office 2010 "sandbox"-säkerhet  (engelska) , Computerworld . Arkiverad från originalet den 2 februari 2017. Hämtad 29 december 2017.

Länkar