カーネルスレッドがNXビットによって保護されたページを実行しようとしたというメッセージ

OSSメッセージペディア

2008-03-27 15:00

Kernel tried to execute NX-protected page - exploit attempt? (uid: user_id)

対処

本メッセージが表示さた後、Oopsが発生し、カーネルの実行が停止する。メモリダンプイメージを取得してcrashなどのコマンドで解析し原因を特定する。

説明

カーネルスレッドがNX(No eXecute)ビットによって保護されたページを実行しようとした。

AMD社及びインテル社はNX機能をそれぞれプロセッサにXDビット(eXecute Disable bit)、NXビット(No eXecute bit)にて実装した。インテル系プロセッサのNX機能はPAE(Page Address Extension)を有効にし且つカーネル側でCONFIG_X86_PAE=yでなければならない。上記の条件を満たすとカーネルが起動時にプロセッサのPTE(Page Table Entry)の64ビット目のXDビットをセットし、ハードウエアのNX機能によりページの保護を行なう。保護されるページにはデータの保存だけが可能である。そこから命令を実行しようとするとプロセッサがページフォルト(Page Fault)を発生し実行を中断し、問題のプロセスにSIGKILLシグナルが送信される仕組になる。これにより悪意を持ったプログラムからバッファオーバーフロー攻撃を免かれる。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

マイナンバーカードの利用状況を教えてください

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]