GNU/Linux >> Linux の 問題 >  >> Linux

自分だけのアドレス空間レイアウトのランダム化を無効にして再度有効にする

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 に注意してください プラットフォームのアーキテクチャをハードコーディングせずに、このコマンドを移植可能にするためにここにあります。


Linux
  1. Linux –緊急時にのみスワップスペースを使用する方法は?

  2. SshとGpgのキーリングを無効にする方法は?

  3. Ubuntuオペレーティングシステムで仮想ホストを無効にし、ApacheとNginxのCentOSを無効にします

  1. カーネルスタックとユーザー空間スタック

  2. glxgears の垂直同期を無効にする

  3. Bash - 日付コマンドとスペース

  1. クラウドインスタンスにスワップスペースを設定する場合と反対する場合の分析

  2. 複数の Linux ディストリビューションに必要なスワップ パーティションは 1 つだけですか? (およびその他の質問)

  3. 緊急時にのみスワップ領域を使用するにはどうすればよいですか?