MS02-001: Vervalste SID kan leiden tot hogere bevoegdheden in Windows 2000

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 289243 - Bekijk de producten waarop dit artikel van toepassing is.
Dit artikel is eerder gepubliceerd onder NL289243

Als u meer informatie wilt over dit probleem in Windows NT 4.0, klikt u op het volgende artikelnummer in de Microsoft Knowledge Base:
289246 MS02-001: Forged SID Could Result in Elevation of Privilege in Windows NT 4.0
Alles uitklappen | Alles samenvouwen

Op deze pagina

Symptomen

In Microsoft Windows NT en Windows 2000 worden systeembronnen beveiligd via toegangscontrolelijsten. Deze lijsten bevatten beveiligings-ID's (SID's) en toegangsrechten of machtigingen die zijn toegekend aan die security-principal. SID's zijn specifiek voor een domein. De SID van een gebruiker of groep uit een domein is altijd gebaseerd op de SID van het domein en vormt een unieke identificatie van de gebruiker of groep. Toegangscontrolelijsten worden ingesteld voor een bron om te bepalen welke gebruikers en groepen toegang hebben tot de bron en welke bevoegdheden ze hebben. Wanneer een gebruiker probeert toegang te krijgen tot een bron, wordt de lijst met SID's in de toegangscontrolelijst vergeleken met de lijst met SID's waarin de gebruiker en de bijbehorende groepslidmaatschappen zijn beschreven. Vervolgens wordt toegang tot de bron verleend of geweigerd.

Wanneer een gebruiker zich aanmeldt bij een domein, worden de SID's van de account en groepslidmaatschappen van de gebruiker vastgesteld door een domeincontroller in het domein van de gebruikersaccount. De SID van het vertrouwde domein, de relatieve ID (RID) van de gebruikersaccount, de RID van de primaire groep van de gebruiker en de SID's van alle andere groepslidmaatschappen worden samengevoegd in een verificatiestructuur en doorgegeven aan de computer die verificatie heeft aangevraagd. Als op de domeincontroller die de verificatie uitvoert, Windows 2000 is geïnstalleerd, wordt ook gekeken of voor de gebruiker SID's zijn vastgelegd in het kenmerk SIDHistory. Als dat het geval is, worden deze SID's ook opgenomen in de verificatiestructuur.

Als de computer die verificatie aanvraagt, zich in een ander domein bevindt dan het domein van de gebruikersaccount, wordt de verificatie uitgevoerd via een vertrouwensrelatie. Tussen domeinen van Windows NT of Windows 2000 wordt een vertrouwensrelatie ingesteld om het verifiëren vanuit oogpunt van de gebruiker te vereenvoudigen. Dit geldt met name bij systemen waar eenmalige aanmelding is ingeschakeld. Wanneer een domein wordt vertrouwd door een ander domein, betekent dit dat het vertrouwde domein ook gebruikers (of computers) kan verifiëren die deel uitmaken van het vertrouwende domein. Tijdens de verificatie accepteert de computer in het vertrouwende domein de verificatiegegevens die zijn verzameld door de vertrouwde-domeincontroller. De computer die de verificatie aanvraagt, kan op geen enkele manier de geldigheid van de verificatiegegevens controleren. De gegevens worden dus uitsluitend op basis van de vertrouwensrelatie geaccepteerd.

Een nadeel van deze methode is dat door het vertrouwende domein niet wordt gecontroleerd of het vertrouwde domein bevoegdheid heeft voor alle SID's in de verificatiegegevens. Als een van de SID's in de lijst een gebruiker of beveiligingsgroep definieert die geen deel uitmaakt van het vertrouwde domein, worden de gegevens geaccepteerd door het vertrouwende domein en gebruikt voor volgende toegangscontrolebeslissingen. Als een hacker kans ziet SID's toe te voegen aan de verificatiegegevens in het vertrouwde domein, kan de hacker een hogere bevoegdheid van een gebruiker of groep aannemen, inclusief de groep Domeinbeheerders voor het vertrouwende domein. Op deze manier is het mogelijk dat een onbevoegde gebruiker volledige beheerderstoegang krijgt tot computers in het vertrouwende domein.

In de praktijk is het echter niet zo eenvoudig gebruik te maken van dit beveiligingsprobleem. Een hacker moet in ieder geval beschikken over beheerdersbevoegdheden voor het vertrouwde domein en over voldoende technische kennis om wijzigingen aan te brengen in low-level functies van het besturingssysteem en gegevensstructuren. In Windows 2000 is een mechanisme ingebouwd voor het toevoegen van SID's aan verificatiegegevens. Dit mechanisme wordt de SIDHistory genoemd. Er is echter geen programmeerinterface waarmee een hacker - zelfs niet met beheerdersbevoegdheden - een SID kan toevoegen aan de SIDHistory-gegevens. Een hacker moet daarvoor binaire wijzigingen doorvoeren in de gegevensstructuren waarin de SIDHistory-gegevens zijn opgeslagen. Om voldoende bescherming te bieden tegen mogelijke aanvallen via deze techniek, heeft Microsoft een functie met de naam SID-filtering toegevoegd aan Windows NT 4.0 en Windows 2000. Met SID-filtering kan een beheerder instellen dat de domeincontrollers in een bepaald domein een vertrouwd domein 'isoleren'. Dit heeft tot gevolg dat de domeincontrollers in het vertrouwende domein alle SID's voor andere domeinen dan het vertrouwde domein verwijderen uit de verificatiegegevens die worden ontvangen van dat domein. Isoleren wordt uitgevoerd vanuit het vertrouwende domein en gebeurt per domein.

Met SID-filtering wordt het concept van transitieve vertrouwensrelaties in Windows 2000 geblokkeerd. Als een geïsoleerd domein zich in het vertrouwenspad tussen twee domeinen bevindt, hebben gebruikers uit domeinen aan de andere zijde van het geïsoleerde domein geen toegang tot bronnen in het isolerende domein. Om deze reden moeten geïsoleerde domeinen altijd leafdomeinen zijn, onderliggende domeinen uitsluitend bronnen bevatten (geen gebruikersaccounts) of het geïsoleerde domein zich in een afzonderlijk forest bevinden.

Een beheerder van Windows 2000 mag de functie SID-filtering niet gebruiken om een domein met 'beperkte toegang' te maken binnen een forest. Het aanbevolen isolatiescenario is alleen domeinen in afzonderlijke forests te isoleren. Er moet vanuit het te beveiligen domein een vertrouwensrelatie worden ingesteld met het te isoleren domein. Vervolgens moet het vertrouwende domein worden geconfigureerd voor het filteren van de SID's uit het vertrouwde domein.

Microsoft adviseert SID-filtering niet te gebruiken tussen domeinen in hetzelfde forest omdat hierdoor de standaard vertrouwensrelatie en de verificatiemethode van een forest wordt verbroken, inclusief replicatie tussen forests. Daardoor bestaat de kans dat er problemen ontstaan met programma's die moeilijk op te lossen zijn. Dit artikel bevat een lijst met programma's en functies die problemen geven bij gebruik in omgevingen met SID-filters. Maak geen gebruik van domeinen met beperkte toegang en volg de bovenstaande aanbevelingen als u deze programma's of functies nodig hebt. Er zijn geen tijdelijke oplossingen beschikbaar voor deze problemen.

Oplossing

U kunt dit probleem oplossen met Windows 2000 Security Rollup Package 1 (SRP1). Klik voor meer informatie over SRP1 op het volgende artikelnummer in de Microsoft Knowledge Base:
311401 Windows 2000 Security Rollup Package 1 (SRP1), January 2002
De Engelse versie van deze correctie moet de volgende (of latere) bestandskenmerken hebben:
   Datum        Tijd   Versie         Grootte  Bestandsnaam
   -----------------------------------------------------------------
   08-Oct-2001  19:13  5.0.2195.4472  123,664  Adsldp.dll
   08-Oct-2001  19:13  5.0.2195.4308  130,832  Adsldpc.dll
   08-Oct-2001  19:13  5.0.2195.4016   62,736  Adsmsext.dll
   08-Oct-2001  19:13  5.0.2195.4384  364,816  Advapi32.dll
   08-Oct-2001  19:13  5.0.2195.4141  133,904  Dnsapi.dll
   08-Oct-2001  19:13  5.0.2195.4379   91,408  Dnsrslvr.dll
   08-Oct-2001  19:19  5.0.2195.4411  529,168  Instlsa5.dll
   08-Oct-2001  19:13  5.0.2195.4437  145,680  Kdcsvc.dll
   04-Oct-2001  21:00  5.0.2195.4471  199,440  Kerberos.dll
   04-Sep-2001  09:32  5.0.2195.4276   71,024  Ksecdd.sys
   27-Sep-2001  15:58  5.0.2195.4411  511,248  Lsasrv.dll    128-bit
   06-Sep-2001  18:31  5.0.2195.4301  507,152  Lsasrv.dll     56-bit
   06-Sep-2001  18:31  5.0.2195.4301   33,552  Lsass.exe
   27-Sep-2001  15:59  5.0.2195.4285  114,448  Msv1_0.dll
   08-Oct-2001  19:14  5.0.2195.4153  312,080  Netapi32.dll
   08-Oct-2001  19:13  5.0.2195.4357  370,448  Netlogon.dll
   08-Oct-2001  19:13  5.0.2195.4464  912,656  Ntdsa.dll
   08-Oct-2001  19:13  5.0.2195.4433  387,856  Samsrv.dll
   08-Oct-2001  19:13  5.0.2195.4117  111,376  Scecli.dll
   08-Oct-2001  19:13  5.0.2195.4476  299,792  Scesrv.dll
   29-May-2001  07:41  5.0.2195.3649    5,632  Sp2res.dll
   08-Oct-2001  19:13  5.0.2195.4025   50,960  W32time.dll
   01-Aug-2001  21:44  5.0.2195.4025   56,592  W32tm.exe
   08-Oct-2001  19:13  5.0.2195.4433  125,712  Wldap32.dll
OPMERKING: vanwege afhankelijkheden tussen bestanden is voor deze hotfix Microsoft Windows 2000 Service Pack 2 vereist.

Status

Microsoft heeft bevestigd dat dit probleem een afname van de beveiliging in Microsoft Windows 2000 kan veroorzaken.

Meer informatie

Bezoek voor meer informatie over dit beveiligingsprobleem de volgende Microsoft-website:
http://www.microsoft.com/technet/security/bulletin/MS02-001.asp

SID-filtering configureren

U kunt SID-filtering configureren in domeinen van Windows 2000 met de bijgewerkte versie van het hulpprogramma Netdom.exe. Dit programma maakt deel uit van Windows 2000 Service Pack 2 (SP2). SID-filtering werkt alleen goed als SP2 is geïnstalleerd op elke domeincontroller in het vertrouwende domein (het domein dat een ander domein isoleert). De bijgewerkte versie van Netdom.exe staat in de map Support Tools op de cd van SP2. U kunt het bestand ook downloaden van de Microsoft-website. De schakeloptie /filtersids is toegevoegd in deze versie van Netdom.exe om SID-filtering te kunnen configureren.

Als u vanuit domeinen met Windows 2000 een domein wilt isoleren, gebruikt u de volgende opdracht eenmaal op een domeincontroller in het domein (in dit voorbeeld wordt het domein ACCDOM gefilterd door het domein RESDOM):
netdom trust RESDOM /D:ACCDOM /UD:ACCDOM\Administrator /PD:adminpwd /UO:RESDOM\Administrator /PO: adminpwd /filtersids:yes
De bijbehorende opdracht voor het uitschakelen van SID-filtering is:
netdom trust RESDOM /D:ACCDOM /UD:ACCDOM\Administrator /PD:adminpwd /UO:RESDOM\Administrator /PO:"" /filtersids:no
Gebruik deze opdracht om de instellingen voor SID-filtering te controleren in een domein:
netdom trust RESDOM /D:ACCDOM /UD:ACCDOM\Administrator /PD: adminpwd /UO:RESDOM\Administrator /PO:adminpwd /filtersids
Standaard Active Directory-replicatie heeft tot gevolg dat de instelling wordt doorgevoerd op alle domeincontrollers in het domein.

Verificatie- en controleaanpassingen

Raadpleeg de on line Help in Windows 2000 voor informatie over het configureren van controlefuncties in Windows 2000.

Wanneer een vertrouwensrelatie wordt ingesteld, wordt in het vertrouwende domein een gegevensstructuur gemaakt en opgeslagen die een Trusted Domain-object (TDO) wordt genoemd. Dit object bevat de SID van het vertrouwde domein en andere gegevens van de vertrouwensrelatie. Wanneer SID-filtering is ingeschakeld voor een vertrouwd domein, is verificatie door dat domein niet mogelijk als de verificatiegegevens een domein-SID bevatten die niet overeenkomt met de SID in de TDO van het vertrouwende domein voor het geïsoleerde domein. Deze situatie is alleen mogelijk wanneer de verificatiegegevens zijn aangepast. Als verificatie op deze manier niet mogelijk is en aanmeld- of afmeldcontrole is ingeschakeld, wordt een gebeurtenis vastgelegd in het gebeurtenislogboek van de domeincontroller die het verificatieverzoek afhandelt in het vertrouwende domein.

SP2 bevat een nieuwe beveiligingscontrolegebeurtenis met gebeurtenis-ID 548 voor NTLM-verificatie. In het Service Pack is ook een nieuwe foutcode (0xC000019B) toegevoegd aan gebeurtenis-ID 677 (Kerberos-verificatie). Dit zijn gebeurtenissen voor aanmeld- en afmeldfouten die worden vastgelegd wanneer de domein-SID is 'vervalst'. Deze gebeurtenissen worden als volgt vastgelegd in het gebeurtenislogboek.

Tijdens NTLM-verificatie:
   Event Type:     Failure Audit
   Event Source:   Security
   Event Category: Logon/Logoff
   Event ID:       548
   Date:           Event date
   Time:           Event time
   User:           NT AUTHORITY\SYSTEM
   Computer:       Name of the computer where the event is logged
   Description:
     Logon Failure.
     Reason:                 Domain sid inconsistent
     User Name:              Name of the user being authenticated
     Domain:                 Name of the Quarantined Domain
     Logon Type:             3
     Logon Process:          NtLmSsp
     Authentication Package: MICROSOFT_AUTHENTICATION_PACKAGE_V1_0
     Workstation Name:       Name of the client computer
Tijdens Kerberos-verificatie:
   Event Type:     Failure Audit
   Event Source:   Security
   Event Category: Account Logon
   Event ID:       677
   Date:           Event date
   Time:           Event time
   User:           NT AUTHORITY\SYSTEM
   Computer:       Name of the computer where the event is logged
   Description:
     Service Ticket Request Failed:
     User Name:              Name of the user being authenticated
     User Domain:            Name of the user's Domain
     Service Name:           Full qualified name of the Quarantined Domain
     Ticket Options:         0x0
     Failure Code:           0xC000019B
     Client Address:         127.0.0.1

   Event Type:     Failure Audit
   Event Source:   Security
   Event Category: Logon/Logoff 
   Event ID:       537
   Date:           Event date
   Time:           Event time
   User:           NT AUTHORITY\SYSTEM
   Computer:       Name of the client computer
   Description:
     Logon Failure:
     Reason:                 An unexpected error occurred during logon
     User Name:              Name of the user being authenticated
     Domain:                 Name of the user's Domain
     Logon Type:             2
     Logon Process:          User32  
     Authentication Package: Negotiate
     Workstation Name:       Name of the client computer 

Beperkingen van SID-filtering

Het toepassen van SID-filtering heeft drie nadelen die tot gevolg kunnen hebben dat sommige gebruikers geen toegang krijgen tot bronnen waarvoor ze wel bevoegdheden hebben:
  • SID-filtering en SIDHistory zijn mechanismen die elkaar uitsluiten. Als SID-filtering is ingeschakeld voor een domein, worden SIDHistory-gegevens in verificatiegegevens uit geïsoleerde domeinen ook gefilterd.
  • SID-filtering kan tot gevolg hebben dat eenmalige aanmelding via transitieve vertrouwensrelaties in Windows 2000 niet meer werkt. Stel dat domein A domein B vertrouwt en domein B domein C. Normaal is het zo in Windows 2000 dat een gebruiker uit domein C toegang kan krijgen tot bronnen in domein A omdat domein A indirect een vertrouwensrelatie heeft met domein C. Als in domein A echter SID-filtering is ingeschakeld voor domein B, kan de controller van domein B geen verificatie meer uitvoeren voor een gebruiker uit domein C. De reden hiervoor is dat domein B geen bevoegdheid heeft voor SID's in domein C.
  • Als de groepen van een gebruikersaccount niet worden onderhouden in het domein van de account, worden SID's gefilterd die zijn gekoppeld aan het lidmaatschap van een gebruiker van universele groepen.

Incompatibele programma's en functies

De volgende programma's en functies van Windows 2000 geven problemen met SID-filtering:
  • Lidmaatschap van een universele groep die geen deel uitmaakt van het domein van de gebruikersaccount
  • Functies van Microsoft Exchange 2000 die zijn gebaseerd op universele groepen
  • SIDHistory voor gemigreerde accounts
  • Concept van transitieve vertrouwensrelaties werkt niet goed
  • Active Directory-replicatie - met name om deze reden mag SID-filtering niet worden gebruikt tussen domeinen in hetzelfde forest. SID-filtering mag alleen worden gebruikt voor het filteren van externe vertrouwensrelaties.
Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie over het verkrijgen van een hotfix voor Windows 2000 Datacenter Server:
265173 The Datacenter Program and Windows 2000 Datacenter Server Product
Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie over het installeren van meerdere hotfixes met slechts één keer opnieuw opstarten:
296861 QChain.exe gebruiken om meerdere hotfixes te installeren, waarbij de computer maar één keer hoeft te worden opgestart

Eigenschappen

Artikel ID: 289243 - Laatste beoordeling: maandag 18 augustus 2003 - Wijziging: 2.1
De informatie in dit artikel is van toepassing op:
  • Microsoft Windows® 2000 Server
  • Microsoft Windows 2000 Service Pack 1
  • Microsoft Windows 2000 Service Pack 2
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Advanced Server
Trefwoorden: 
kbbug kbfix kbwin2000presp3fix kbsecvulnerability kbwin2000sp3fix kbsecurity kbsecbulletin kbsechack KB289243

Geef ons feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com