実行可能ファイルのアドレス空間レイアウトのランダム化を有効にするにはどうすればよいですか?
注:私はVisual Studio、または/dynamicbase
コンパイラオプションを提供するコンパイラを使用していません。
この説明では、ASLR を有効にする機能をコンパイラに追加するとします。
その他の PE フラグ
設定方法を既に知っている他の Windows 実行可能イメージ オプションがあります。たとえば、次にIMAGE_FILE_NET_RUN_FROM_SWAP
フラグを立てます。PE バイナリ ヘッダーで PE オプションを設定します。
LOADED_IMAGE li;
MapAndLoad(fileName), null, li, false, false)
LI.FileHeader.FileHeader.Characteristics |= IMAGE_FILE_NET_RUN_FROM_SWAP;
UnMapAndLoad(li)
アドレス空間レイアウトのランダム化を有効にするにはどうすればよいですか? PEフラグですか?アセンブリ マニフェストエントリですか。
ボーナス
実行可能ファイルを NX (実行なし) にオプトインするにはどうすればよいですか?