randomize_va_space のドキュメント sysctl 設定は Documentation/sysctl/kernel.txt にあります カーネルソースツリーにあります。基本的に、
0 - プロセスのアドレス空間のランダム化をオフにします。
1 - mmap ベース、スタック、および VDSO ページのアドレスをランダム化します。
2 - さらに、ヒープのランダム化を有効にします。
Linux ベースのシステムで ASLR をローカルで無効にする最善の方法は、プロセスのパーソナリティ フラグを使用することです。人格フラグを操作するコマンドは setarch です と
-R 、 --addr-no-randomize
仮想アドレス空間のランダム化を無効にします (ADDR_NO_RANDOMIZE をオンにします)。
続行する方法は次のとおりです:
$> setarch $(uname -m) -R /bin/bash
このコマンドは、ASLR が無効になっているシェルを実行します。このプロセスのすべての子孫は、父親のパーソナリティ フラグを継承するため、ASLR が無効になります。フラグの継承を破る唯一の方法は、setuid プログラムを呼び出すことです (そのような機能をサポートすることはセキュリティ違反になります)。
uname -m に注意してください プラットフォームのアーキテクチャをハードコーディングせずに、このコマンドを移植可能にするためにここにあります。