内容へ移動
WildTree Wiki
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
トレース:
nxビット
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== NXビット ====== WindowsXP SP2より、NXビットによるプロテクションが提供されています。この機能は、バッファオーバランなどを利用したマルウェアからPCを守るのに有効とされています。 具体的には、スタックをオーバフローさせ、スタック上に配置した悪意あるコードへ制御を移すことで実現される攻撃をブロックできるのです。 この機能は、NXビットをサポートしたCPU(AMD Opteron/Athlon64など)との組み合わせでのみ機能します。 機能しているかどうかを確かめるには、次のコードをコンパイルして実行してみればいいでしょう。 <code> #include <stdio.h> int dummy(void) { return 3; } int main(int argc, char *argv[]) { unsigned char evilP[128]; unsigned char *srcP; int (*evilfP)(); int i; srcP = (unsigned char*)dummy; for(i = 0 ; i < 128 ; i++) { evilP[i] = srcP[i]; } evilfP = (int(*)())evilP; printf("%d\n", (*evilfP)()); return 0; } </code> このコードが何も問題なく実行されたら、NXビットによるプロテクトは機能していません。機能している場合には、次のようなダイアログが現れます。 [[http://www.wildtree.jp/~araki/images/nxbit.jpg|{{http://www.wildtree.jp/~araki/images/nxbit.jpg}}]] (画像提供: kanai氏) なお、コンパイラをお持ちでない方のために、上記のソースをコンパイルしたものを、[[http://www.wildtree.jp/~araki/archive/windows/evil.exe|{{http://www.wildtree.jp/~araki/archive/windows/evil.exe}}]]として置いておきます。ダウンロードしたら、コマンドプロンプトから実行してください。 [[Windowsに関して]]へ戻る。
nxビット.txt
· 最終更新: 2015/04/10 08:27 by
127.0.0.1
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ