Detaljan opis značajke Data Execution Prevention (DEP) (Sprečavanje izvršavanja podataka) u sustavima Windows XP Service Pack 2, Windows XP Tablet PC Edition 2005 i Windows Server 2003

Prijevod članka Prijevod članka
ID članka: 875352 - Pregledajte proizvode na koje se odnosi ovaj članak.
Proširi sve | Sažmi sve

Na ovoj stranici

Sažetak

Data Execution Prevention (DEP) (Sprečavanje izvršavanja podataka) jest skup hardverskih i softverskih tehnoloških rješenja koji provodi dodatne provjere memorije radi sprečavanja pokretanja zloćudnog koda u sustavu. U sustavima Microsoft Windows XP Service Pack 2 (SP2) i Microsoft Windows XP Tablet PC Edition 2005, DEP pojačan je hardverom i softverom.

Glavna prednost DEP-a jest sprečavanje pokretanja koda s podatkovnih stranica. Kod se obično ne izvršava sa zadanog spremišta (heap) i stoga (stack). Hardverski pojačan DEP prepoznaje kod koji se pokreće s tih lokacija i inicira iznimku kada do izvršenja dođe. Softverski pojačan DEP može spriječiti da zloćudni kod iskoristi mehanizme za rukovanje iznimkama u sustavu Windows.

UVOD

U ovom se članku opisuje značajka DEP u sustavima Windows XP SP2 i Microsoft Windows Server 2003 s paketom Service Pack 1 (SP1) te se obrađuju sljedeće teme:

Dodatne informacije

Hardverski pojačan DEP

Hardverski pojačan DEP označava sve memorijske lokacije procesa kao neizvršne, osim ako neka od njih eksplicitno ne sadrži izvršni kod. Postoji vrsta napada koja pokušava umetnuti i pokrenuti kod s neizvršnih memorijskih lokacija. DEP pomaže u sprečavanju tih napada tako što ih presreće i inicira iznimku.

Hardverski pojačan DEP oslanja se na hardverski procesor da bi označio memoriju atributom koji naznačava da se iz nje ne bi smio izvršavati kod. DEP funkcionira na temelju virtualnih memorijskih stranica te obično mijenja neki bit u zapisu tablice stranica (PTE) kako bi označio memorijsku stranicu.

Arhitektura procesora određuje način na koji se DEP implementira u hardver i na koji označava virtualnu memorijsku stranicu. No procesori koji podržavaju hardverski pojačan DEP mogu inicirati iznimku samo kada se kod izvršava sa stranice označene odgovarajućim skupom atributa.

Advanced Micro Devices (AMD) i Intel definiraju i isporučuju arhitekture kompatibilne sa sustavom Windows koje su istodobno kompatibilne i s DEP-om.

Počevši od sustava Windows XP SP2, 32-bitna verzija sustava Windows koristi jedno od sljedećeg:
  • Procesorsku značajku zaštite stranice zabranom izvršenja (NX) kako ju je definirao AMD.
  • Značajku bita za onemogućavanje izvršenja (XD) kako ju je definirao Intel.
Da bi koristio te procesorske značajke, procesor mora raditi u načinu rada Physical Address Extension (PAE) (Proširenje fizičke adrese). Sustav Windows, međutim, automatski omogućava PAE radi podrške za DEP. Korisnici ne moraju zasebno omogućivati PAE uz pomoć parametra /PAE prilikom pokretanja sustava.

Napomena Budući da 64-bitne jezgre prepoznaju Address Windowing Extensions (AWE) (Proširenja adresnih prozora), u 64-bitnim verzijama sustava Windows ne postoji zasebni PAE u jezgrenom način rada.
Dodatne informacije o načinima rada PAE i AWE u sustavu Windows Server 2003 potražite u Microsoftovoj bazi znanja u članku pod sljedećim brojem:
283037 Podrška za veliku memoriju dostupna je u sustavima Windows Server 2003 i Windows 2000 (Ova veza može upućivati na sadržaj koji je djelomično ili potpuno na engleskom jeziku)

Softverski pojačan DEP

U sustav Windows XP SP2 ugrađen je dodatni skup sigurnosnih provjera za značajku Data Execution Prevention. Te su provjere, poznate pod nazivom softverski pojačan DEP, osmišljene radi sprečavanja zloćudnog koda koji iskorištava mehanizme rukovanja iznimkama u sustavu Windows. Softverski pojačan DEP radi na bilo kojem procesoru koji može pokretati sustav Windows XP SP2. Prema zadanim postavkama softverski pojačan DEP štiti samo ograničene sistemske binarne datoteke, neovisno od kapaciteta hardverski pojačanog DEP-a procesora.

Prednosti

Glavna prednost DEP-a jest sprečavanje izvršavanja koda s podatkovnih stranica, kao što su stranice zadanog spremišta, razne stranice stogova i stranice memorijskih područja. Kod se obično ne izvršava sa zadanog spremišta (heap) i stoga (stack). Hardverski pojačan DEP prepoznaje kod koji se pokreće s tih lokacija i inicira iznimku kada do izvršenja dođe. Ako se iznimkom ne rukuje, obrada će se zaustaviti. Izvršavanje koda iz zaštićene memorije u jezgrenom načinu rada uzrokuje pogrešku sa zastojem.

DEP može pomoći u sprečavanju jedne klase sigurnosnih upada. DEP posebno može pomoći u sprečavanju zloćudnih programa u kojima virus ili neka druga vrsta napadača u neki proces umeće dodatni kod, a zatim pokušava pokrenuti tako umetnuti kod. U sustavu s DEP-om izvršenje umetnutog koda uzrokuje iznimku. Softverski pojačan DEP može spriječiti programe koji iskorištavaju mehanizam za rukovanje iznimkama u sustavu Windows.

Konfiguracija DEP-a na razini cijelog sustava

Konfiguracija DEP-a za cijeli sustav kontrolira se parametrom u datoteci Boot.ini. Ako ste prijavljeni kao administrator, možete jednostavno konfigurirati postavke DEP-a u dijaloškom okviru System (Sustav) u upravljačkoj ploči.

Windows podržava četiri konfiguracije na razini sustava i za hardverski pojačani i za softverski pojačani DEP.
Sažmi ovu tablicuProširi ovu tablicu
KonfiguracijaOpis
OptIn (Uključivanje)Ovo je zadana postavka. U sustavima s procesorima koji mogu implementirati hardverski pojačan DEP, DEP se zadano omogućuje za ograničene binarne datoteke sustava i programe koji "se za to odluče". Tom opcijom DEP zadano pokriva samo binarne datoteke sustava Windows.
OptOut (Isključivanje)DEP je zadano omogućen za sve procese. U dijaloškom okviru System (Sustav) u upravljačkoj ploči možete ručno kreirati popis određenih programa na koje se DEP ne primjenjuje. IT profesionalci mogu koristiti Application Compatibility Toolkit (Komplet alata za kompatibilnost aplikacija) da bi "isključili" jedan ili više programa iz DEP zaštite. Nadopune za rješavanje problema s kompatibilnošću sustava ili međuslojevi za DEP imaju učinka.
AlwaysOn (Uvijek uključeno)Ova postavka omogućuje cjelovitu primjenu DEP-a na cijeli sustav. DEP se primjenjuje na sve pokrenute procese. Nije dostupan popis iznimaka kojim bi se pojedini programi izuzeli iz zaštite DEP-a. Nadopune za rješavanje problema s kompatibilnošću sustava za DEP nemaju učinka. DEP se primjenjuje i na programe koji su izuzeti primjenom paketa alata za kompatibilnost aplikacija (Application Compatibility Toolkit).
AlwaysOff (Uvijek isključeno)Ova postavka ne omogućuje primjenu DEP-a ni na koji dio sustava, neovisno o hardverskoj podršci za DEP. Procesor ne radi u načinu rada PAE ako u datoteci Boot.ini nije navedena mogućnost /PAE.
Hardverski i softverski pojačani DEP konfiguriraju se na isti način. Ako je pravilo za DEP na razini sustava postavljeno na OptIn, i softverski i hardverski pojačan DEP štitit će iste jezgrene binarne datoteke i programe sustava Windows. Ako sustav ne može koristiti hardverski pojačani DEP, jezgrene binarne datoteke i programe sustava Windows štitit će samo softverski pojačani DEP.

Slično tome, ako je pravilo za DEP postavljeno na OptOut, programi izuzeti iz DEP zaštite bit će izuzeti i iz hardverski i iz softverski pojačanog DEP-a.

Postavke datoteke Boot.ini jesu sljedeće:
/noexecute=policy_level
Napomena policy_level (razina pravila) definira se kao AlwaysOn (Uvijek uključeno), AlwaysOff (Uvijek isključeno), OptIn (Uključivanje) ili OptOut (Isključivanje).

Postojeće /noexecute postavke u datoteci Boot.ini ne mijenjaju se prilikom instalacije sustava Windows XP SP2. One se ne mijenjaju ni ako se slika operacijskog sustava Windows premješta između računala sa ili bez hardverski pojačane DEP podrške.

Tijekom instaliranja sustava Windows XP SP2 i Windows Server 2003 SP1 ili njihovih novijih verzija, po zadanom je omogućena razina pravila OptIn, osim u slučaju da se tijekom nenadzirane instalacije navede neka druga razina pravila. Ako postavka /noexecute=policy_level ne postoji u datoteci Boot.ini za neku od verzija sustava Windows koja podržava DEP, ponašanje je isto kao da je pridodana postavka /noexecute=OptIn.

Ako ste prijavljeni kao administrator, možete ručno konfigurirati DEP da se prebacuje između načela OptIn i OptOut na kartici Data Execution Prevention (Sprečavanje izvršavanja podataka) u prozoru System Properties (Svojstva sustava). Sljedeći postupak opisuje kako se ručno konfigurira DEP na računalu:
  1. Kliknite Start, a zatim Run (Pokreni) te upišite sysdm.cpl i kliknite OK (U redu).
  2. Na kartici Advanced (Dodatno) u odjeljku Performance (Performanse), kliknite Settings (Postavke).
  3. Na kartici Data Execution Prevention (Sprečavanje izvršavanja podataka) provedite jedan od sljedećih postupaka:
    • Kliknite Turn on DEP for essential Windows programs and services only (Uključi DEP samo za bitne programe i servise sustava Windows) da biste odabrali pravilo OptIn.
    • Kliknite Turn on DEP for all programs and services except those I select (Uključi DEP za sve programe i servise osim onih koje odaberem) da biste odabrali pravilo OptOut, a zatim kliknite Add (Dodaj) da biste dodali programe s kojima ne želite koristiti DEP.
  4. Dvaput kliknite OK (U redu).
IT profesionalci mogu kontrolirati konfiguraciju DEP-a na razini sustava na različite načine. Datoteka Boot.ini može se izravno mijenjati pomoću mehanizama skriptiranja ili alata Bootcfg.exe ugrađenog u sustav Windows XP SP2.

Da biste konfigurirali DEP da se prebacuje na pravilo AlwaysOn pomoću datoteke Boot.ini, slijedite ove korake:
  1. Kliknite Start, desnom tipkom miša kliknite My Computer (Moje računalo), a zatim kliknite Properties (Svojstva).
  2. Kliknite karticu Advanced (Dodatno), a zatim kliknite Settings (Postavke) u polju Startup and Recovery (Pokretanje i oporavak).
  3. U polju System startup (Pokretanje sustava) kliknite Edit (Uredi). Otvorit će se datoteka Boot.ini u programu Notepad (Blok za pisanje).
  4. U programu Notepad (Blok za pisanje) kliknite Find (Traži) na izborniku Edit (Uređivanje).
  5. U okvir Find what (Traži) upišite /noexecute, a zatim kliknite Find Next (Traži sljedeće).
  6. U okviru Find (Traženje) kliknite Cancel (Odustani).
  7. Zamijenite unos policy_level unosom AlwaysOn.

    UPOZORENJE Provjerite jeste li točno upisali tekst. U datoteci Boot.ini sada bi trebalo pisati sljedeće:
    /noexecute=AlwaysOn
  8. U programu Notepad (Blok za pisanje) kliknite Save (Spremi) na izborniku File (Datoteka).
  9. Dvaput kliknite OK (U redu).
  10. Ponovo pokrenite računalo.
Za nenadzirane instalacije sustava Windows XP SP2 ili kasnijih verzija možete koristiti datoteku Unattend.txt da biste unaprijed postavili određenu konfiguraciju DEP-a. Za određivanje konfiguracije DEP-a na razini sustava možete koristiti stavku OSLoadOptionsVar u odjeljku [Data] datoteke Unattend.txt.

Konfiguracija DEP-a po programima

Radi kompatibilnosti programa možete selektivno onemogućiti DEP za pojedine 32-bitne programe kada je DEP postavljen na razinu načela OptOut. Za to se poslužite karticom Data Execution Prevention (Sprečavanje izvršavanja podataka) u prozoru System Properties (Svojstva sustava). Za IT profesionalce sustavu Windows XP SP2 pridodana je nadopuna za probleme programske nekompatibilnosti nazvana DisableNX. DisableNX onemogućuje značajku Data Execution Prevention za program na koji se DisableNX primijeni.

DisableNX se može primijeniti na pojedini program uz pomoć paketa Application Compatibility Toolkit. Dodatne informacije o kompatibilnosti aplikacija u sustavu Windows potražite pod temom Windows Application Compatibility (Kompatibilnost aplikacija sustava Windows) na ovom Microsoftovu web-mjestu:
http://www.microsoft.com/technet/prodtechnol/windows/appcompatibility/default.mspx
Dodatne informacije potražite u članku iz Microsoftove baze znanja pod brojem
912923 Kako utvrditi je li hardverski DEP dostupan i konfiguriran na računalu (Ova veza može upućivati na sadržaj koji je djelomično ili potpuno na engleskom jeziku)

Reference

Dodatne informacije potražite u članku iz Microsoftove baze znanja pod brojem
899298 Tema pomoći "Understanding Data Execution Prevention" (Više o sprečavanju izvršavanja podataka) netočno navodi zadanu postavku DEP-a u paketu Windows Server 2003 Service Pack 1 (Ova veza može upućivati na sadržaj koji je djelomično ili potpuno na engleskom jeziku)

Svojstva

ID članka: 875352 - Posljednja izmjena: 10. lipnja 2013. - Revizija: 14.3
Odnosi se na:
  • Microsoft Windows Server 2003 Service Pack 1, ako se koristi s:
    • 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
Ključne riječi: 
kbtshoot kbinfo KB875352

Pošaljite povratne informacije

 

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