タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。
戻る おまけ : PIC,PIE,shellcode,ASLR 最後に、知っておくといい話題として、 昔からよく使われるPICと呼ばれるプログラムの形式について説明し、 メモリ破壊バグが引き置こすshellcodeの紹介、 それからPICを応用してshellcodeの問題を緩和する手法である ASLR について説明しておこう。 PIC (Position Independent Code:位置独立コード)とは、どんなアドレスに配置されても動作する機械語コードのことだ。 ここまで説明してきた機械語プログラムは、PICではなかった。例えば、次のELF実行ファイルを考えよう。 pic_pie/no_pic.s .globl _start .text _start: incl data0 mov $60, %rax syscall .data data0: .long 8 $ as -o no_p
はじめに 本記事はlinuxに存在する[1]Address Space Location Randomization(ASLR)、およびKASLR(Kernel ASLR)という、やたら長い名前のセキュリティ機能を紹介するものです。メモリアドレスの概念やC言語ポインタが理解できれば読める内容だと思います。 ASLR 概要 あるシステムをクラッカーが攻撃する方法はいろいろありますが、そのうちの一つが不正な方法によってプログラムに特定の命令を実行させる、不正なデータを操作させるというものです。攻撃には、(当然ながら)攻撃に使う命令、あるいはデータのアドレスが必要になります。ASLRが無い環境においてはプログラムのコードやデータは[2]固定されたアドレスにロードされるので、動かしているプログラムのバイナリがどんなものかわかっていれば、攻撃者が攻撃に使うコードやデータのアドレスを知るのは簡単です。
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く