NXビット
NXビットとは
NXビット (No eXecute bit) は、ノイマン型アーキテクチャのコンピュータにおいて特定のメモリ領域(に置かれたデータ)に付与する実行不可属性、またはその属性付与機能を指す。
NXビットは、端的に言えば「データの誤実行」を防ぐために用いられる。そのしくみは、メモリをコード(プロセッサ命令)領域とデータ領域とに分離し、データを配置したメモリ領域にあらかじめ特別な印(属性)を付与することで、この領域のデータを実行しないようにする(実行を試みた際に例外=エラーを発行する)ものである。
典型的には、バッファオーバーラン攻撃(後述)等に代表される、ヒープやスタック領域等に置かれたデータを破壊ないしは書き換えて任意のコードを挿入し実行を誘う攻撃を、オペレーティングシステムとCPUの協調により保護するために用いられる機能である。
その機能自体は、汎用機やワークステーション等の世界では既に特に目新しいものではなかったが、パーソナルコンピュータ用に最も普及したIA-32/AMD64アーキテクチャにおける実装は比較的最近の出来事であり、最初に実装したAMD64系列が搭載したものを"NXbit"と呼称したため、一般にはこの名称が普及した。
ノイマン型アーキテクチャのコンピュータでは、プログラムをメモリ上にデータとして読み込み、逐次実行する。メモリを読み取った際それがデータであるかプログラムであるのかを、単にメモリ上のデータのみをもって判断することは、ノイマン型では本質的に不可能である。バッファオーバーラン(バッファーオーバーフロー)等と呼ばれる攻撃は、ノイマン型コンピュータのこのような性質を悪用して行われる。
なお、インテルはこの機能をXDビット (eXecute Disable) と称している。しかしながら、インテルのXDビットとAMDのNXビットは同一の機能を持ち、従って名称以外は全く同一のものである。
- 出典: フリー百科事典『ウィキペディア(Wikipedia)』
- [ NXビットの改定履歴 ]
ERP
中規模向けERPパッケージ"GEMPLANET"を核とした業務システムを構築するソリューションです。
マイクロソフト(Microsoft)
マイクロソフト製品群と技術力でビジネス基盤強化・企業価値向上支援するマイクロソフトソリューション









