NX bit. Mi az Execute Disable Bit Az Execute Disable Bit funkció a BIOS-ban

5.13 OLDALSZINT VÉDELEM ÉS VÉGREHAJTÁS-TILTÁS BIT

Az U / S (felhasználó / felügyelő) és R / W (olvasható / írható) jelzők által biztosított védelem mellett a PAE lapozáshoz vagy az IA-32e lapozáshoz használt lapozási struktúrák (lásd a 4. fejezetet) végrehajtást tiltó bitet (végrehajtás tiltható) biztosítanak. ). Ez a bit további védelmet nyújt az adatlapok számára. Az adatoldalak végrehajtásának megtagadása védelmet nyújthat a rosszindulatú szoftverekkel szemben, amelyek kódot próbálnak futtatni egy adatoldalról. Ezt a lehetőséget biztosítják:

  • 32 bites védett mód, PAE engedélyezett
  • IA-32e módban (64 bites mód)

Bár az execute-disable bit nem igényel további CPU-utasításokat a működéséhez, az operációs rendszereknek engedélyezniük kell a PAE módot, és oldalszinten kell szabályozniuk ennek a bitnek a beállítását. Ha az oldal végrehajtási-letiltási bitje be van állítva, akkor az oldal csak adatként használható. A memóriában lévő oldal kódjának végrehajtására tett kísérlet a végrehajtás-letiltás bitkészlettel oldalhibás kivételt eredményez.

A kódfuttatás megtagadásának képessége csak PAE és IA-32e módokban támogatott, és nem támogatott a szokásos 32 bites oldalmódban. A meglévő memóriavédelmi mechanizmusok (lásd: 5.11. szakasz, „Oldalszintű védelem”) továbbra is működnek, függetlenül a végrehajtást tiltó bitbeállítástól.

Futtatás-letiltás bit támogatás észlelése és engedélyezése
5.13.1 A végrehajtás-letiltás képesség észlelése és engedélyezése

A CPUID utasítás segítségével programozottan meghatározhatja a végrehajtás-letiltás bittámogatás jelenlétét. CPUID.80000001H: EDX.NX = 1 azt jelenti, hogy a végrehajtás-letiltás támogatott. Ha az execute-disable támogatott, a program engedélyezheti az IA32_EFER.NXE 1-re állításával.
Az IA32_EFER akkor érhető el, ha a CPUID.80000001H.EDX = 1. Ha az execute-disable nem támogatott, az IA32_EFER.NXE beállításba való írás #GP kivételt eredményez. Lásd 5-4. táblázat.

Oldalak védelme az Execute-Disable funkcióval
5.13.2 Végrehajtás – Oldalvédelem letiltása

A végrehajtást tiltó bit az oldalszerkezeteken javítja az adatoldalak védelmét. A processzor utasításai nem tölthetők be a memóriából, ha az IA32_EFER.NXE = 1, és a végrehajtást tiltó bit be van állítva az oldal megjelenítéséhez használt bármely oldalszerkezeten. Az 5-5. táblázat felsorolja a megengedett oldalhasználatot a megfelelő bejegyzés végrehajtható letiltható bitjének (63. bit) értékétől függően a lapozási struktúrák minden szintjén. A végrehajtás tiltása a végrehajtást tiltó bittel a lapozási struktúrák bármely szintjén aktiválható, függetlenül a megfelelő bit értékétől más szinteken. Ha az execute-disable nincs engedélyezve, az oldal adatlapként és kódlapként is használható.


(Táblázat az Intel kézikönyvéből)

32 bites módban, ahol a PAE engedélyezve van, a végrehajtás-letiltás bit beállításának hatása a kód- és adatlapokra az 5-6., 5-7. Táblázatban látható.


(Táblázatok az Intel kézikönyvéből)

Tartalék bitek ellenőrzése
5.13.3 Fenntartott bit ellenőrzése

A processzor ellenőrzi a tartalék biteket az oldalszerkezet rekordjain belül. Az ellenőrzött bitkészlet a lapozási módtól függően változik, és függhet a fizikai címtér méretétől is.

Az 5-8. táblázat bemutatja azokat a fenntartott biteket, amelyeket akkor ellenőriztek, amikor a végrehajtást tiltó ellenőrző bit engedélyezve van a processzoron (CR4.PAE = 1 és IA32_EFER.NXE = 1). Az 5-8. és 5-9. táblázat a következő oldalmódok ellenőrzéseit mutatja:

  • Nem PAE 4 KByte-os lapozás: Csak 4 KByte-os lapozás (CR4.PAE = 0,
    CR4.PSE = 0).
  • PSE36: 4 KByte és 4 MByte oldalak (CR4.PAE = 0, CR4.PSE = 1).
  • PAE: 4 KB és 2 MB oldalak (CR4.PAE = 1, CR4.PSE = X).

A tartalék bitek ellenőrzése az adott processzorverzió által támogatott fizikai címtér méretétől függ, a CPUID.80000008H szerint. Lásd a táblázatokban található megjegyzéseket.


(Táblázat az Intel kézikönyvéből)

Ha a letiltási ellenőrzés végrehajtása nincs engedélyezve vagy nem érhető el, a 64 bites módban történő ellenőrzés 63 bites ellenőrzést is tartalmaz. Ennek és a régi 32 bites módokhoz fenntartott többi bitnek az ellenőrzését az 5-10. táblázat mutatja.


(Táblázat az Intel kézikönyvéből)

Kivételkezelés
5.13.4 Kivételek kezelése

Ha a végrehajtás letiltása bit be van kapcsolva (IA32_EFER.NXE = 1), akkor az oldalhiba előfordulásának feltételei ugyanazok, mint a 64 bites vagy 32 bites módban, ha a végrehajtás letiltása funkció ki van kapcsolva. Ezenkívül egy új feltétellel egészül ki: egy utasítás betöltése egy lineáris címre, amelyet a végrehajtás-letiltás jelzővel beállított oldalon lévő fizikai memóriába kell lefordítani.

Az oldal végrehajtása és letiltása bármely jogosultsági szinten előfordulhat. Bármilyen utasítás betöltésekor előfordulhat, beleértve (de nem kizárólagosan): ágak közelében, távoli ugrások, CALL / RET / INT / IRET, szekvenciális utasításlehívások és feladatváltások. Végrehajtás-letiltás bit

  • IA32_EFER.NXE = 1.
  • Az utasításfordító kinézeti puffer (ITLB) egy olyan oldallal van betöltve, amely az
    még nincs jelen az ITLB-ben.

További azonos opciónevek: Végrehajtás nélküli memóriavédelem, végrehajtás letiltása funkció.

A BIOS-ban számos lehetőség található a számítógép biztonságának megőrzésére. Az egyik ilyen lehetőség a Letiltó bit végrehajtása funkció. Célja egy olyan működési mód engedélyezése, amely védelmet nyújt a felhasználónak a programkód és az információbiztonsági fenyegetések néhány gyakori sérülékenysége ellen. Az opciónak két értéke van - Enabled és Disabled.

Az opció szorosan kapcsolódik egy olyan fogalomhoz, mint a DEP (Data Execution Prevention). Ennek a technológiának a lényege a következő: A számítógép memóriájában két külön rész található, amelyek közül az egyik az adatok, a másik pedig a végrehajtható parancsok számára. Ebben az esetben a processzornak van egy speciális állapotbitje (bit NX, No Execution Bit), melynek beállítása lehetővé teszi, hogy a processzor ne használja fel az adatrészből származó információkat végrehajtható utasításként. Ennek a bitnek a beállítására kell használni az Execute Disable Bit opciót.

A DEP technológia használata bizonyos esetekben lehetővé teszi a puffertúlcsordulási hibával kapcsolatos számítógépes adatok biztonságát érintő kockázatok elkerülését. Ezt a hibát gyakran használják ki különböző trójaiak és vírusok. Ahhoz, hogy ez a technológia maximális védelmet nyújtson, a processzornak, az operációs rendszernek és az alkalmazásprogramoknak támogatniuk kell.

A legtöbb modern operációs rendszer támogatja a DEP technológiát. Ezen operációs rendszerek közé tartozik a Windows XP, Vista, Windows 7 és 8. A technológiát emellett a UNIX és Linux családok modern operációs rendszerei is támogatják. A Windows operációs rendszercsaládban a DEP támogatás a Vezérlőpult Rendszer részében állítható be.

Processzor szinten a DEP-et először az AMD Athlon processzorok támogatták, majd az Intel processzorokba valósították meg - kezdve a Pentium 4 és a Celeron vonallal. Az AMD alkotta meg az "NX-bit" kifejezést, és az Intel processzorokban ezt a bitet XD-bitnek hívják.

Engedélyezzem az opciót?

A legtöbb esetben az Execute Disable Bit opciót engedélyezni kell, hogy megvédje számítógépét a hackertámadásoktól, trójaiaktól, vírusoktól és férgektől, amelyek a puffertúlcsordulási módszert használják. Természetesen a processzorkód végrehajtását tiltó bit bekapcsolása nem csodaszer, amely megvédi a felhasználót minden lehetséges információs fenyegetéstől, de komoly segítség lehet a számítógép védelmének egyéb eszközeihez, elsősorban a szoftverekhez.

Operációs rendszer szinten akkor is működik a technológia, ha a processzor nem támogatja, vagy az NX bit le van tiltva benne. Ebben az esetben azonban a számítógépes védelem hatékonysága csökken.

Vannak azonban olyan szoftverek, amelyek nem kompatibilisek a DEP technológiával, és nem tartoznak a rosszindulatú programok kategóriájába. Az ilyen szoftverek működésének lehetővé tétele érdekében a BIOS lehetőséget biztosít az opció letiltására is. Ezért az opciót csak akkor kell Letiltva értékre állítani, ha ilyen szoftvert használ.

Gyakori lehetőségek: Engedélyezett tiltott

Hajtsa végre a Disable Bit Quick Review parancsot

A Disable Bit végrehajtása XD rövidítése Végrehajtás Letiltás NX, rövidítése Nincs Végrehajtás.

Amikor engedélyezve van

Amikor Tiltva

engedélyezze

A Disable Bit végrehajtása A Disable Bit végrehajtása

A Disable Bit végrehajtása

  • SUSE Linux 9.2 vagy újabb.

Mellesleg, egyes alkalmazások és eszközillesztő-programok a jobb teljesítmény érdekében kódot próbálnak végrehajtani a kernelveremből. Ez oldalhibát okoz, ha az Execute Disable Bit engedélyezve van. Ilyen esetekben szükség lesz rá letiltása ezt a BIOS funkciót.

Hajtsa végre a Letiltási bit részleteit

A puffertúlcsordulási támadások komoly veszélyt jelentenek a hálózatba kapcsolt számítógépekre. Például egy féreg megfertőzheti a számítógépet, és eláraszthatja a processzort kóddal, ami leállítja a rendszert. A féreg az egész hálózaton is elterjed, megbénítva minden egyes rendszert, amelyet megfertőz.

Az ilyen támadások elterjedtsége miatt az Intel a processzor architektúráját egy ún A Disable Bit végrehajtása, amelynek célja a számítógép védelme bizonyos puffertúlcsordulási támadásokkal szemben. Ez a funkció először 2001-ben jelent meg a 64 bites Intel Itanium processzorhoz, és csak 2004 novemberétől jelent meg az Intel asztali és munkaállomási processzoraiban. Intel mobil processzorok A Disable Bit végrehajtása csak 2005 februárjában kezdték el szállítani.

Az ezzel a funkcióval rendelkező processzorok korlátozhatják azokat a memóriaterületeket, amelyeken az alkalmazáskódot le lehet hajtani. Ha olyan operációs rendszerrel van párosítva, amely támogatja a A Disable Bit végrehajtása funkció esetén a processzor egy új attribútumbitet ad hozzá ( az Execute Disable Bit) a címfordításhoz használt lapozási struktúrákban.

Ha a A Disable Bit végrehajtása egy memóriaoldal 1-re van állítva, az az oldal csak adatok tárolására használható. Nem használható végrehajtható kód tárolására. De ha a A Disable Bit végrehajtása egy memóriaoldal 0-ra van állítva, az oldal adat vagy végrehajtható kód tárolására használható.

A processzor ezentúl ellenőrzi a A Disable Bit végrehajtása amikor kódot hajt végre. Nem hajt végre kódot a memórialapon a A Disable Bit végrehajtása 1-re állítva. Bármilyen kísérlet kód futtatására egy ilyen védett memórialapon oldalhiba-kivételt eredményez.

Tehát, ha egy féreg vagy vírus kódot szúr be a pufferbe, a processzor megakadályozza a kód végrehajtását, és a támadás meghiúsul. Ez azt is megakadályozza, hogy a féreg vagy vírus átterjedjen a hálózat többi számítógépére.

Ez a BIOS funkció a processzor kapcsolója A Disable Bit végrehajtása választási lehetőség. Valójában a rövidítés XD rövidítése Végrehajtás Letiltásés az Intel megvalósítására jellemző. Az AMD implementációját ún NX, rövidítése Nincs Végrehajtás.

Amikor engedélyezve van, a processzor megakadályozza a kód végrehajtását a csak adatokat tartalmazó memórialapokon. Ez némi védelmet nyújt a puffertúlcsordulási támadások ellen.

Amikor Tiltva, a processzor nem korlátozza a kód végrehajtását egyetlen memóriaterületen sem. Ez a processzort sebezhetőbbé teszi a puffertúlcsordulási támadásokkal szemben.

Erősen ajánlott, hogy engedélyezze ez a BIOS-funkció a puffertúlcsordulási támadások elleni fokozott védelem érdekében.

Felhívjuk azonban figyelmét, hogy a A Disable Bit végrehajtása A funkció csak az újabb Intel processzorokban található hardverfunkció. Ha a processzora nem támogatja A Disable Bit végrehajtása, akkor ennek a BIOS-szolgáltatásnak nincs hatása.

Ezenkívül olyan operációs rendszert kell használnia, amely támogatja a A Disable Bit végrehajtása funkció. Jelenleg ez a következő operációs rendszereket tartalmazza:

  • Microsoft Windows Server 2003 Service Pack 1 vagy újabb verzióval.
  • Microsoft Windows XP Service Pack 2 vagy újabb verzióval.
  • Microsoft Windows XP Tablet PC Edition 2005 vagy újabb.
  • SUSE Linux 9.2 vagy újabb.
  • Red Hat Enterprise Linux 3 frissítés 3 vagy újabb.

Mellesleg, egyes alkalmazások és eszközillesztő-programok a jobb teljesítmény érdekében kódot próbálnak végrehajtani a kernelveremből. Ez oldalhibát okoz, ha A Disable Bit végrehajtása engedélyezve. Ilyen esetekben szükség lesz rá letiltása ezt a BIOS funkciót.

NX-Bit (Nincs eXecute Bit- AMD-ben), vagy XD-Bit (A Disable Bit végrehajtása- Intel) egy vírusirtó, amely megakadályozhatja, hogy bizonyos típusú rosszindulatú programok „megfertőzzék” a számítógépet. Küzd a mesterségesen okozott puffertúlcsordulási hiba ellen. A Microsoft technológia szoros kapcsolatban áll ezzel az antivírussal. DEP.

A technológia csak akkor működik, ha:

  • A processzor hardverszinten támogatott (az Intel Pentium 4 sorozat 6xx és újabb verzióitól, valamint az AMD Athlon 64 összes módosításától);
  • A technológiát támogató operációs rendszer van telepítve (Linux 2.3.23-as verziótól kezdődő kernellel; Windows XP Service Pack 2 és újabb);
  • PAE vagy x86-64 architektúra használatos.

Néha a technológia szoftverütközést okozhat bizonyos szoftvertípusokkal. Tehát az EDB processzorokat támogató alaplapok BIOS-ában lehetséges letiltani ezt a technológiát.

NX (XD) Az x86 és x86-64 architektúrákban használt memórialap-attribútum, amelynek célja, hogy megerősítse a rendszer védelmét a szoftverhibák, vírusok, trójai programok és más rosszindulatú programok ellen.

  • NX (N o e x ecute) - AMD terminológia;
  • XD(pl x ekúció D isable) - Intel terminológia.

NX-bit- a 64 bites oldaltáblázatok elemének legjelentősebb bitje, amelyet a processzor a címtér memóriafoglalására használ. A 64 bites oldaltáblázatokat csak a 64 bites módban vagy a fizikai címbővítéssel (PAE) engedélyezett operációs rendszerekben használják.

Napjainkban a számítógépes rendszerek olyan memóriával rendelkeznek, amely meghatározott attribútumokkal rendelkező oldalakra van felosztva. Tehát az új terméksorozatban a processzorfejlesztők még egy attribútumot adtak hozzá - kódvégrehajtás tilalma az oldalon (az oldal adattárolásra használható, programkód tárolására nem)... Abban az esetben, ha egy ilyen oldalra próbálják átvinni a vezérlést, a processzor speciális laphibát generál, és a program vészhelyzetben leáll.

A végrehajtásvédelmi attribútumot más mikroprocesszor-architektúrákban is megvalósították, de csak az x86-os rendszerekben valósították meg ezt a védelmet szoftverszegmensek szintjén. Ma ez a védelem az egyes oldalak szintjén valósul meg.

A modern szoftverekben egyértelmű felosztás van kód ("text"), adat ("data") és nem inicializált adatok ("bss") szegmensekre. Ezen kívül van egy dinamikusan kiosztott memória szegmens is, amely viszont a következőkre oszlik:

  • kupac ("halom");
  • szoftver verem ("verem").

Ha nem történt hiba a program írása közben, az utasításmutató nem lép túl a kódszegmenseken. De szoftverhiba esetén a vezérlés átvihető más memóriaterületekre. Ez magában foglalja a processzor blokkolását a programozott műveletek előtt, és egy véletlenszerű parancssorozat véletlenszerű végrehajtásának megkezdését. Ez mindaddig folytatódik, amíg a processzor érvénytelen sorozatot nem azonosít, majd a belső védelmi rendszer működik. Így vagy úgy, a program összeomlik. Ezenkívül a processzor olyan szekvenciával is találkozhat, amelyet a bejárt címre ugrás parancsként értelmez. Ebben az esetben a processzor egy végtelen ciklusba kerül, és a program lefagy. Az ilyen esetek megelőzése érdekében a szakértők egy további attribútumot vezettek be, amely a következő feltételt határozza meg: ha egy memóriaterület nem programkód tárolására szolgál, akkor annak minden oldalát meg kell jelölni NX bittel, és ha megpróbálják átvinni. vezérlés, a processzor parancsot generál, és az operációs rendszer azonnal leállítja a programot. Ennek az attribútumnak a bevezetésének fő oka nem annyira az volt, hogy gyors választ adjon az ilyen hibákra, hanem az ilyen hibák gyakorisága a támadók körében, akik jogosulatlan hozzáférést használtak a számítógéphez. Az általuk írt mindenféle vírusok és férgek a közös szoftverek sebezhetőségét keresték.

Azok. részletek

A puffer gyakran túlcsordul, amikor a fejlesztő rögzített hosszúságúra állítja be. Feltételezve, hogy a lefoglalt hely elegendő lesz, a fejlesztő nem ellenőrzi, hogy az adatok manipulálásakor nincsenek-e határon kívül, aminek következtében a bejövő adatok elfoglalhatják a nem nekik szánt memóriaszegmenst, tönkretéve a benne tárolt információkat. azokat a szegmenseket.

Az ideiglenes pufferek gyakran olyan szubrutinokon belül vannak lefoglalva, amelyek memóriája a programveremben van definiálva. Többek között a visszatérő címeket tartalmazza a hívó alprogramhoz. A programkód vizsgálata után a támadó észlelheti az ilyen hibát, majd egy bizonyos adatsort továbbíthat a programnak, amelynek feldolgozása során a program tévedésből lecseréli a veremben lévő visszatérési címet a támadó által igényelt címre. A szubrutin befejezése után a return (RET) utasítás a támadó utasításmutatóba való belépésének címét a veremből az utasításmutatóba helyezi, és átveszi az irányítást a számítógép felett. Az NX attribútum lehetetlenné teszi ezt a manipulációt. A veremterület NX bittel van megjelölve, és minden kódvégrehajtás tilos. Tehát, ha átadja az irányítást a veremnek, akkor a védelem működni fog.

A veremben/halomban kódfuttatást használó programok futtatásához Windows operációs rendszer alatt az NX funkciót le kell tiltani a teljes munkamenet során. Az újraaktiváláshoz számítógép újraindítása szükséges. Annak ellenére, hogy a Windows mechanizmust biztosít az alkalmazások engedélyezésére, ez a módszer nem mindig működik megfelelően.

Alapinformációk

Ez a technológia csak akkor működik, ha a következő feltételek teljesülnek:

  • Egy processzor, amely hardver szinten támogatja ezt a technológiát (az Intel Pentium 4 6xx sorozattól és az összes AMD Athlon 64 módosítástól kezdve).
  • Ezt a technológiát támogató operációs rendszer (például Windows XP Service Pack 2 vagy újabb).
  • PAE vagy x86-64 architektúra használatos (ezekben a módokban elérhető a végrehajtást tiltó bit az oldaltáblázatban).

Ez a technológia néha szoftverkonfliktusokat okoz bizonyos típusú szoftverekkel, ezért az EDB-támogatással rendelkező processzorok telepítését biztosító alaplapok BIOS-ában lehetséges ez a technológia letiltása.

Leírás

NX (XD) egy memóriaoldal attribútuma x86 és x86-64 architektúrákban, amellyel megbízhatóbban lehet védeni a rendszert a szoftverhibáktól, valamint a vírusoktól, trójai falovaktól és más, ezeket használó rosszindulatú programoktól. NX ( N o e x ecute) - AMD terminológia. Az Intel ezt az attribútumot XD bitnek nevezi (pl x ekúció D képes).

Mivel a modern számítógépes rendszerekben a memória olyan oldalakra van felosztva, amelyek bizonyos attribútumokkal rendelkeznek, a processzor fejlesztői hozzáadtak egy másikat: a kód végrehajtásának tilalmát az oldalon. Vagyis egy ilyen oldal adat tárolására használható, programkód azonban nem. Amikor megpróbálják átvinni az irányítást egy ilyen oldalra, a processzor speciális oldalhibát generál, és a program (leggyakrabban) rendellenesen leáll. A végrehajtásvédelmi attribútum már régóta jelen van más mikroprocesszoros architektúrákban, de az x86-os rendszerekben ilyen védelmet csak a programszegmensek szintjén valósítottak meg, aminek a mechanizmusát a modern operációs rendszerek már régóta nem használják. Most már az egyes oldalak szintjén is hozzáadásra került.

A modern programok egyértelműen kódrészekre ("szöveg"), adatokra ("adatok"), inicializálatlan adatokra ("bss"), valamint dinamikusan kiosztott memóriaterületre vannak osztva, amely halomra ("kupac") van felosztva és egy programverem ("verem"). Ha a program hibátlanul íródik, az utasításmutató soha nem lép túl a kódszegmenseken, azonban a programhibák következtében a vezérlés más memóriaterületekre is átkerülhet. Ebben az esetben a processzor leállítja a programozott műveletek végrehajtását, hanem véletlenszerű parancssorozatot hajt végre, amelyhez elfogadja az ezeken a területeken tárolt adatokat, amíg érvénytelen sorozatot nem talál, vagy olyan műveletet nem próbál végrehajtani, amely sérti a program integritását. a rendszert, ami a védelmi rendszer aktiválását okozza. Mindkét esetben a program összeomlik. Ezenkívül a processzor találkozhat egy parancsokkal értelmezett szekvenciával, hogy ugorjon a már átadott címre. Ebben az esetben a processzor végtelen ciklusba lép, és a program lefagy, a processzor idejének 100% -át elveszi. Az ilyen esetek megelőzése érdekében bevezették ezt a kiegészítő attribútumot: ha a memória egy bizonyos területe nem programkód tárolására szolgál, akkor annak minden oldalát meg kell jelölni egy NX bittel, és ha megpróbálják átvinni a vezérlést. , a processzor speciális esetet alkot, és az operációs rendszer azonnal megszakítja a programot. , jelezve a határokon kívül eső szegmenst (SIGSEGV).

Ennek az attribútumnak a bevezetésének fő oka nem annyira az ilyen hibákra való gyors reagálás volt, hanem az, hogy az ilyen hibákat a kiberbűnözők gyakran használták fel a számítógépekhez való jogosulatlan hozzáférésre, valamint vírusok írására. Rengeteg ilyen vírus és féreg jelent meg, kihasználva a gyakori programok sebezhetőségeit.

Az egyik támadási forgatókönyv az, hogy egy program puffer túlcsordulása (gyakran valamilyen hálózati szolgáltatást nyújtó démon) használatával egy speciálisan írt rosszindulatú program (exploit) kódot írhat a sérülékeny program adatterületére. úgy, hogy egy hiba eredményeként ez a kód átveszi az irányítást és végrehajtja a támadó által programozott műveleteket (gyakran ez egy operációs rendszer shell végrehajtására irányuló kérés, amellyel a támadó átveszi az irányítást a sérülékeny rendszer felett a támadó tulajdonosának jogaival sebezhető alkalmazás, nagyon gyakran root).

Műszaki információk

A puffertúlcsordulás gyakran előfordul, amikor a programfejlesztő kijelöl egy meghatározott hosszúságú adatterületet (puffert), abban a hitben, hogy ez elég lesz, de ekkor az adatokat manipulálva semmilyen módon nem ellenőrzi a túlcsordulást. Ennek eredményeként a beérkező adatok nem nekik szánt memóriaterületeket foglalnak el, megsemmisítve az ott elérhető információkat. Nagyon gyakran ideiglenes puffereket osztanak ki az eljárásokon (alprogramokon) belül, amelyek memóriáját a programköteg foglalja el, amely a hívó alprogram visszatérési címét is tárolja. Miután alaposan tanulmányozta a programkódot, a támadó ilyen hibát találhat, és most már csak egy ilyen adatsorozatot kell átvinnie a programba, amelynek feldolgozása után a program tévesen lecseréli a veremben lévő visszaküldési címet a a támadó, aki adat leple alatt valamilyen programkódot is átadott. A szubrutin befejezése után a return (RET) utasítás a veremből az utasításmutatóba ugrik be a támadó eljárásába való belépéshez szükséges címre. A számítógép feletti vezérlés megvan.

Az NX attribútum ezt lehetetlenné teszi. A veremterület NX-bittel van megjelölve, és ebben tilos bármilyen kódfuttatás. Most, ha átadja az irányítást a veremnek, akkor a védelem működni fog. Bár a program összeomlásra kényszeríthető, nagyon nehézkessé válik tetszőleges kód futtatására (ehhez a programnak el kell távolítania az NX védelmet).

Egyes programok azonban a veremben vagy halomban lévő kód végrehajtását használják. Egy ilyen döntés kapcsolódhat az optimalizáláshoz, a dinamikus fordításhoz vagy egyszerűen egy eredeti műszaki megoldáshoz. Az operációs rendszerek jellemzően rendszerhívásokat biztosítanak, hogy végrehajtható memóriát kérjenek pontosan erre a célra, de sok régebbi program mindig az összes memóriát futtathatónak tekinti. Az ilyen programok Windows alatti futtatásához le kell tiltani az NX funkciót a teljes munkamenetre, az újraindításhoz pedig újraindítás szükséges. Ilyen program például az Iris.

Az NX bit a 64 bites laptábla-bejegyzés legjelentősebb bitje, amelyet a processzor használ a memória lefoglalására a címtérben. A 64 bites oldaltáblázatokat olyan operációs rendszerek használják, amelyek 64 bites módban vagy engedélyezett fizikai címkiterjesztéssel (PAE) futnak. Ha az operációs rendszer 32 bites táblákat használ, akkor nincs lehetőség oldalvégrehajtási védelem használatára.

Linkek


Wikimédia Alapítvány. 2010.

Nézze meg, mi az "NX-bit" más szótárakban:

    - (angolul The Beat Generation, néha "Broken Generation"-nak fordítják) az amerikai szerzők egy csoportjának a neve, akik prózán és költészeten dolgoztak. A bitgeneráció középről befolyásolta kortársaik kulturális tudatát ... Wikipédia

    BIT- "Wireless Information Technologies" LLC Moszkva, szervezet, tech. Forrás: http://www.vedomosti.ru/newspaper/article.shtml?2004/10/29/82849 BIT Biztonságos Informatikai Osztályok SPbGITMO Oktatás és Tudomány, Szentpétervár, tech ... Rövidítések és betűszavak szótára

    A; pl. nemzetség. bitek és s-ek; m. [az angolból. rövidítések Bináris digit bináris karakter] Az információ mennyiségének és a számítógép memóriájának minimális mértékegysége (egy cellával vagy az igen nem típusú bináris karakterrel egyenlő). * * * bit (angol bit, a ...... enciklopédikus szótár

    A bit per másodperc, bps (angolul bit per másodperc, bps) az információátviteli sebesség alapvető mértékegysége, amelyet az OSI vagy a TCP / IP hálózati modell fizikai rétegében használnak. Magasabb szinteken a hálózati modellek általában több ... ... Wikipédia-t használnak

    A bit per másodperc, bps (angolul bit per másodperc, bps) az információátviteli sebesség alapvető mértékegysége, amelyet az OSI vagy a TCP / IP hálózati modell fizikai rétegében használnak. Magasabb szinteken a hálózati modellek általában ... ... Wikipédia

    - (spanyol). Ugyanaz, mint az igazi, 16 1/2 kopejka értékű érme. Az orosz nyelvben szereplő idegen szavak szótára. Chudinov AN, 1910. BIT 1 [angol. beat beat] múzsák. tánc és könnyűzene, 4/4 méretű egyenletes tempóban, ... ... Orosz nyelv idegen szavak szótára

    paritás bit- paritásbit ellenőrző bit Az adatokhoz hozzáadott ellenőrző bit a helyességük ellenőrzésére oly módon, hogy az adott binárisok összege, beleértve az ellenőrző bitet is, mindig páros (vagy mindig páratlan) legyen. [Domarev ...... Műszaki fordítói útmutató

    A Beat (angolul beat beat) a share (zenei) szó jelentésének angol fordítása. Sok zenei számítógépes program használója használja ezt a szót a lejátszási sebesség BPM (angol beat per minute, bpm beats per minute) megjelölésére, ... ... Wikipédia