DetailPage-MSS-KB

Knowledge Base

Artikel ID: 875352 - Laatste beoordeling: maandag 11 december 2006 - Wijziging: 14.1

Op deze pagina

Samenvatting

DEP (Data Execution Prevention) is een reeks hardware- en softwaretechnologieën waarmee u extra controles op het geheugen kunt uitvoeren om te voorkomen dat schadelijke code op een systeem wordt uitgevoerd. In Microsoft Windows XP Service Pack 2 (SP2) en Microsoft Windows XP Tablet PC Edition 2005 wordt DEP door hardware en software aangestuurd.

Het belangrijkste voordeel van DEP is dat het de uitvoering van code vanuit gegevenspagina's helpt voorkomen. Doorgaans wordt code niet uitgevoerd vanaf de standaardheap en de stack. Door hardware aangestuurde DEP kan code detecteren die vanuit deze locaties wordt uitgevoerd. Bij uitvoering treedt een uitzondering op. Door software aangestuurde DEP kan helpen voorkomen dat schadelijke code gebruikmaakt van de mechanismen waarmee uitzonderingen in Windows worden afgehandeld.

Inleiding

In dit artikel wordt de DEP-functie in Windows XP SP2 en Microsoft Windows Server 2003 met Service Pack 1 (SP1) beschreven. De volgende onderwerpen komen aan de orde:

Meer informatie

Door hardware aangestuurde DEP

Door hardware aangestuurde DEP markeert alle geheugenlocaties in een proces als niet-uitvoerbaar tenzij de locatie expliciet uitvoerbare code bevat. Er bestaat een klasse aanvallen die code probeert in te voegen en uit te voeren vanuit niet-uitvoerbare geheugenlocaties. DEP helpt dergelijke aanvallen te voorkomen door ze te onderscheppen en een uitzondering te produceren.

Door hardware aangestuurde DEP maakt gebruik van processorhardware om geheugen te markeren met een kenmerk dat aangeeft dat code niet vanuit dat geheugen mag worden uitgevoerd. DEP functioneert op basis van virtuele geheugenpagina's en doorgaans markeert DEP de geheugenpagina door een bit te wijzigen in de paginatabelvermelding (PTE).

De architectuur van de processor bepaalt hoe DEP in hardware wordt geïmplementeerd en hoe DEP de virtuele geheugenpagina markeert. Processors die door hardware aangestuurde DEP ondersteunen, kunnen echter een uitzondering veroorzaken wanneer code wordt uitgevoerd vanaf een pagina die met de juiste reeks kenmerken is gemarkeerd.

AMD (Advanced Micro Devices) en Intel hebben Windows-compatibele architecturen gedefinieerd en gedistribueerd die compatibel zijn met DEP.

Vanaf Windows XP SP2 gebruikt de 32-bits versie van Windows een van de volgende functies:
  • De processorfunctie NX (no-execute page-protection), gedefinieerd door AMD.
  • De functie XD (Execute Disable Bit), gedefinieerd door Intel.
Om deze processorfuncties te kunnen gebruiken, moet de processor worden uitgevoerd in de PAE-modus (Physical Address Extension). Windows schakelt automatisch over op PAE-modus om DEP te ondersteunen. Gebruikers hoeven niet zelf PAE in te schakelen met de opstartoptie /PAE.

Opmerking Omdat 64-bits kernels kunnen werken met AWE (Address Windowing Extensions), is er geen afzonderlijke PAE-kernel in 64-bits versies van Windows.
Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie over PAE en AWE in Windows Server 2003:
283037  (http://support.microsoft.com/kb/283037/ ) Ondersteuning voor groot geheugen is beschikbaar in Windows Server 2003 en Windows 2000

Door software aangestuurde DEP

Aan Windows XP SP2 is een aanvullende reeks DEP-beveiligingscontroles toegevoegd. Deze controles, ook wel door software aangestuurde DEP genoemd, zijn ontworpen om schadelijke code te blokkeren die gebruikmaakt van de mechanismen waarmee uitzonderingen in Windows worden afgehandeld. Door software aangestuurde DEP kan worden uitgevoerd op elke voor Windows XP SP2 geschikte processor. Standaard dient door software aangestuurde DEP alleen ter bescherming van beperkte binaire systeembestanden, ongeacht de door hardware aangestuurde DEP-mogelijkheden van de processor.

Voordelen

Het belangrijkste voordeel van DEP is dat het de uitvoering van code helpt voorkomen vanaf gegevenspagina's, zoals de standaardheappagina's, diverse stackpagina's en geheugenpoolpagina's. Doorgaans wordt code niet uitgevoerd vanaf de standaardheap en de stack. Door hardware aangestuurde DEP kan code detecteren die vanuit deze locaties wordt uitgevoerd. Bij uitvoering treedt een uitzondering op. Als de uitzondering niet wordt afgehandeld, wordt het proces afgebroken. Uitvoering van code vanuit beschermd geheugen in de kernelmodus veroorzaakt een Stop-fout.

DEP kan een klasse beveiligingsschendingen helpen blokkeren. DEP kan met name schadelijke programma's helpen blokkeren waarin een virus of ander type aanval extra code in een proces heeft ingebracht en deze ingebrachte code vervolgens probeert uit te voeren. Op een systeem met DEP veroorzaakt de uitvoering van de ingevoerde code een uitzondering. Door software aangestuurde DEP kan programma's helpen blokkeren die gebruikmaken van de mechanismen waarmee uitzonderingen in Windows worden afgehandeld.

Systeemconfiguratie van DEP

DEP-configuratie voor het systeem wordt gestuurd met de schakelopties in het bestand Boot.ini. Als u als beheerder bent aangemeld, kunt u DEP-instellingen nu eenvoudig configureren vanuit het dialoogvenster Systeem in het Configuratiescherm.

Windows ondersteunt vier systeemconfiguraties voor zowel door hardware als door software aangestuurde DEP.
Deze tabel samenvouwenDeze tabel uitklappen
ConfiguratieBeschrijving
OptInDit is de standaardconfiguratie. Op systemen met processors die door hardware aangestuurde DEP kunnen implementeren, wordt DEP standaard ingeschakeld voor beperkte systeembestanden en 'opt-in'-programma's. Met deze optie worden alleen systeembinaries van Windows standaard door DEP verwerkt.
OptOutDEP wordt standaard voor alle processen ingeschakeld. Met het dialoogvenster Systeem in het Configuratiescherm kunt u handmatig een lijst maken van specifieke programma's waarop DEP niet is toegepast. IT-professionals kunnen met de Application Compatibility Toolkit een of meer programma's uitsluiten (opt-out) voor DEP-bescherming. Systeemcompatibiliteitscorrecties of shims voor DEP hebben wel effect.
AlwaysOnDeze instelling biedt volledige DEP-dekking voor het hele systeem. Alle processen worden altijd met DEP-dekking uitgevoerd. De lijst met uitzonderingen om specifieke programma's voor DEP-bescherming uit te sluiten, is niet beschikbaar. Systeemcompatibiliteitscorrecties voor DEP hebben geen effect. Programma's die zijn uitgesloten (opt-out) met behulp van de Application Compatibility Toolkit worden met DEP-dekking uitgevoerd.
AlwaysOffBij deze instelling heeft geen enkel deel van het systeem DEP-bescherming, ook niet bij hardware-ondersteuning van DEP. De processor wordt alleen in de PAE-modus uitgevoerd als de optie /PAE in het bestand Boot.ini is opgegeven.
Door hardware en software aangestuurde DEP wordt op dezelfde wijze geconfigureerd. Als het DEP-beleid voor het hele systeem is ingesteld op OptIn, worden dezelfde Windows-kernbinaries en -programma's beveiligd door hardware- en software-DEP. Als het systeem niet overweg kan met hardware-DEP, worden de Windows-kernbinaries en -programma's alleen door software-DEP beveiligd.

En als het systeembeleid voor DEP is ingesteld op OptOut, worden programma's die zijn uitgesloten voor DEP-bescherming uitgesloten van zowel door hardware als door software aangestuurde DEP.

De instellingen van het bestand Boot.ini zijn de volgende:
/noexecute=policy_level
Opmerking policy_level is gedefinieerd als AlwaysOn, AlwaysOff, OptIn of OptOut.

Bestaande /noexecute-instellingen in het bestand Boot.ini worden niet gewijzigd wanneer Windows XP SP2 wordt geïnstalleerd. Deze instellingen worden evenmin gewijzigd als een installatiekopie van het Windows-besturingssysteem wordt verplaatst binnen computers met of zonder door hardware aangestuurde DEP-ondersteuning.

Tijdens de installatie van Windows XP SP2 en Windows Server 2003 SP1 of hoger wordt het beleidsniveau OptIn standaard ingeschakeld, tenzij in een onbewaakte installatie een ander beleidsniveau is opgegeven. Als de instelling /noexecute=beleidsniveau niet voorkomt in het bestand Boot.ini voor een versie van Windows die DEP ondersteunt, is de werking hetzelfde als wanneer de instelling /noexecute=OptIn zou zijn opgenomen.

Als u bent aangemeld als beheerder, kunt u DEP handmatig configureren om te schakelen tussen de beleidsinstellingen OptIn en OptOut. Daartoe gebruikt u het tabblad Preventie van gegevensuitvoering in Systeemeigenschappen. In de volgende procedure wordt beschreven hoe u DEP handmatig op de computer configureert:
  1. Klik op Start, klik op Uitvoeren, typ sysdm.cpl en klik op OK.
  2. Open het tabblad Geavanceerd en klik onder Prestaties op Instellingen.
  3. Gebruik op het tabblad Preventie van gegevensuitvoering een van de volgende procedures:
    • Klik op DEP alleen voor kritieke Windows-programma's en -services inschakelen als u het OptIn-beleid wilt selecteren.
    • Klik op DEP voor alle programma's en services inschakelen, behalve voor de hieronder geselecteerde als u het OptOut-beleid wilt selecteren. Klik vervolgens op Toevoegen om de programma's toe te voegen waarvoor u de DEP-functie niet wilt gebruiken.
  4. Klik tweemaal op OK.
IT-professionals kunnen de DEP-configuratie in het systeem op diverse manieren instellen. Het bestand Boot.ini kan rechtstreeks worden gewijzigd met scripts of met het hulpprogramma Bootcfg.exe dat in Windows XP SP2 is opgenomen.

Ga als volgt te werk als u DEP via het bestand Boot.ini wilt configureren om over te schakelen naar het beleid AlwaysOn:
  1. Klik op Start, klik met de rechtermuisknop op Deze computer en klik op Eigenschappen.
  2. Open het tabblad Geavanceerd en klik op Instellingen in het veld Opstart- en herstelinstellingen.
  3. Klik op Bewerken in het veld Systeem starten. Open het bestand Boot.ini in Kladblok.
  4. Klik in Kladblok op Zoeken in het menu Bewerken.
  5. Typ /noexecute in het vak Zoeken naar en klik op Volgende zoeken.
  6. Klik in het dialoogvenster Zoeken op Annuleren.
  7. Vervang beleidsniveau door AlwaysOn.

    Waarschuwing Zorg ervoor dat u de tekst zonder fouten invoert. De schakeloptie in het bestand Boot.ini luidt nu:
    /noexecute=AlwaysOn
  8. Open het menu Bestand in Kladblok en klik op Opslaan.
  9. Klik tweemaal op OK.
  10. Start de computer opnieuw op.
Voor onbewaakte installaties van Windows XP SP2 of hoger kunt u het bestand Unattend.txt gebruiken om een specifieke DEP-configuratie van gegevens te voorzien. U kunt de vermelding OSLoadOptionsVar in de sectie [Data] van het bestand Unattend.txt gebruiken om een DEP-systeemconfiguratie op te geven.

Programmaconfiguratie van DEP

Ten behoeve van de programmacompatibiliteit kunt u DEP selectief uitschakelen voor afzonderlijke 32-bits programma's wanneer DEP is ingesteld op het beleidsniveau OptOut. Daartoe gebruikt u het tabblad Preventie van gegevensuitvoering in Systeemeigenschappen om DEP selectief voor een programma uit te schakelen. Voor IT-professionals is in Windows XP SP2 een nieuwe programmacompatibiliteitscorrectie, DisableNX, opgenomen. Met de compatibiliteitscorrectie DisableNX schakelt u Preventie van gegevensuitvoering uit voor het programma waarop de correctie is toegepast.

De compatibiliteitscorrectie DisableNX kan met de Application Compatibility Toolkit op een programma worden toegepast. Voor meer informatie over Windows-toepassingscompatibiliteit raadpleegt u Windows Application Compatibility op de volgende Microsoft-website:
http://www.microsoft.com/technet/prodtechnol/windows/appcompatibility/default.mspx (http://www.microsoft.com/technet/prodtechnol/windows/appcompatibility/default.mspx)
Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
912923  (http://support.microsoft.com/kb/912923/ ) Vaststellen of hardware-DEP beschikbaar is en geconfigureerd is op uw computer

Referenties

Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
899298  (http://support.microsoft.com/kb/899298/ ) In het helponderwerp 'Inzicht in Preventie van gegevensuitvoering' wordt een onjuiste standaardinstelling voor Preventie van gegevensuitvoering in Windows Server 2003 Service Pack 1 vermeld

De informatie in dit artikel is van toepassing op:
  • Microsoft Windows Server 2003 Service Pack 1 op de volgende platformen
    • Microsoft Windows Server 2003, Web Edition
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows XP Professional Service Pack 2 (SP2)
  • Microsoft Windows XP Tablet PC Edition 2005
Trefwoorden: 
kbinfo kbtshoot KB875352
Delen
Extra ondersteuningsopties
Microsoft Community Support-forums
Neem rechtstreeks contact met ons op
Een door Microsoft gecertificeerde partner zoeken
Microsoft Store