NX bit

Z Wikipedii, wolnej encyklopedii

NX bit – znak towarowy rozszerzenia technologii stronicowania pamięci, zastosowany w niektórych procesorach rodziny K8 firmy AMD. Polega ono na zastosowaniu w tablicy stron dodatkowego bitu nazwanego NX (od ang. no execute – nie wykonuj), pozwalającego oznaczyć pojedyncze strony. Gdy bit NX dla danej strony jest ustawiony, próba wykonania zawartości tej strony jako kodu kończy się wygenerowaniem wyjątku, zgłaszanego systemowi operacyjnemu, co powoduje przerwanie wykonywania programu.

Mechanizm ten chroni aplikacje przed niektórymi wersjami ataku typu przepełnienie bufora, nie pozwalając wykonać szkodliwego kodu z zablokowanej strony. Bit NX powinien być ustawiony dla wszystkich stron procesu, z wyjątkiem programu i bibliotek oraz świadomie dozwolonych przez program wyjątków.

Ta sama technologia została też zastosowana w nowszych procesorach Intel, jednak pod nazwą XD-bit (ang. execute disable – blokada wykonywania).