Wikiによると、ASLRは、実行可能ファイルのベースやスタック、ヒープ、ライブラリの位置など、プロセスの主要なデータ領域のアドレス空間の位置をランダムに配置します。
概念的には、ASLRは、プロセスメモリアドレスレイアウトの知識に依存するバッファオーバーフローの悪用を防ぎます。ランダム化が多ければ多いほどよいことは理解していますが、実行可能ファイルのベースのみをランダム化し、残りを変更せずにそのままにしておくことは、このベースに対して有効でしょうか?攻撃者が実行可能ファイルのベースアドレスを取得できない場合、実行可能ファイルの他の領域のベースアドレスを取得できません。それとも何か不足していますか?
いいえ。多くの攻撃は、ライブラリルーチンのアドレスに依存しており、実行可能ファイルがどこにロードされるかは問題ではありません。ほとんどの固定アドレスが悪用される可能性があります。