ASLR 【Address Space Layout Randomization】 アドレス空間配置のランダム化

概要

ASLR(Address Space Layout Randomization)とは、オペレーティングシステム(OS)が実行プログラムメインメモリ上に展開する位置を毎回ランダムに変更することで攻撃を受けにくくする技術。主要なOSのほとんどが対応している。

不正にコード実行させる攻撃としてよく用いられる手法に「バッファオーバーフロー」がある。プログラム入力を受け付けるために用意したバッファ領域に想定を超える長大な文字列などを送りつけ、溢れた隣接領域にあるプログラムを攻撃コードに書き換えて実行させる手口である。

実行プログラムライブラリスタックヒープなどの領域が毎回同じか似たような位置、配置でメモリ上に展開されると、攻撃者は各領域の位置関係やメモリアドレスの推測が容易になり、不正なコードを送り込んで実行させやすくなってしまう。

これを防ぐため、ASLRではメモリ上の配置を無作為に選択し、コードデータが毎回異なる位置関係になるよう配置する。2007年頃からLinuxWindowsmacOSAndroidiOSなど主要なOS実装され始め、多くの製品ではデフォルトで有効に設定されている。

(2024.7.30更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる