NXビット(実行防止)とは?
NXビット(実行防止)とは、メモリ領域ごとに「命令として実行してよいか」を示す属性ビット。データ用の領域を実行不可にしておけば、バッファオーバフローで書き込んだコードをその場で走らせる攻撃を防げる。MMUやMPUの領域属性として設定する。
えぬえっくすびっと
NXビット(実行防止)の意味
メモリ領域ごとに「命令として実行してよいか」を示す属性ビット。データ用の領域を実行不可にしておけば、バッファオーバフローで書き込んだコードをその場で走らせる攻撃を防げる。MMUやMPUの領域属性として設定する。
NXビット(実行防止)の具体例
組込みLinuxではスタックとヒープを実行不可にし、コード領域は書込み不可にする(W^X)。マイコンでもMPUでRAM全体を実行不可に設定しておけば、スタックを壊す不具合が任意コード実行にまで発展するのを水際で止められる。
NXビット(実行防止)は試験でどう引っ掛けられる?
コードの注入は防げても、既存のコード断片をつなぎ合わせるReturn-Oriented Programmingは防げない。「NXを有効にしたから安全」ではなく、スタック保護やアドレス配置のランダム化と併用して初めて意味を持つ対策。
NXビット(実行防止)と関連する用語
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。