保護機構をやさしく理解するシリーズ。Stack Canaryとは何か? return address の前にいる見張り役(第3回/全10回)
前回は、NXによって「データを書く場所」と「命令を実行する場所」が分けられ、スタック上でそ ...
保護機構をやさしく理解するシリーズ。NXとは何か? なぜスタック上のコード実行が止められるのか(第2回/全10回)
前回は、現代のバイナリにはいくつもの保護機構があり、バグがあっても簡単には大きな問題へつな ...
保護機構をやさしく理解するシリーズ。なぜ今のバイナリは簡単に壊せないのか?保護機構の全体像(第1回/全10回)
今回は、保護機構シリーズの入口として、「なぜ今のバイナリは簡単に壊せないのか? 保護機構の ...
Buffer Overflowとは何か?学習の総まとめ:壊れる流れを言語化してみよう(最終回/全10回)
Buffer Overflow というテーマを、できるだけやさしく、順番に積み上げながら学 ...
Buffer Overflowとは何か?ret2winとは何か?最初に理解したい”制御奪取”の形(第9回/全10回)
ここまでは、Buffer Overflowの基本から始まり、 ・バッファとは何か ・配列と ...
Buffer Overflowとは何か?64bit環境でBuffer Overflowを見るときの注意点(第8回/全10回)
ここまでのシリーズでは、Buffer Overflow の基本から始まり、 ・バッファとは ...
Buffer Overflowとは何か?オフセットとは何か?どこまで壊れたかを論理的に考える(第7回/全10回)
前回は、Segmentation Faultがただの失敗ではなく、「どこかが壊れた」という ...
Buffer Overflowとは何か?クラッシュから考える:Segmentation Faultは何を教えてくれるのか(第6回/全10回)
前回は、関数の中のバッファの近くにある、saved RBPや、return address ...
Buffer Overflowとは何か?saved RBP と return address はなぜ大事なのか?(第5回/全10回)
前回は、スタックとは何か、そして関数が呼ばれるとスタック上にその関数専用の作業スペースが作 ...
Buffer Overflowとは何か?スタック上で何が起きるのか?関数呼び出しとローカル変数の関係(第4回/全10回)
ここまでの第1回から第3回では、Buffer Overflowの基本を学んできました。 バ ...