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の基本を学んできました。 バ ...
Buffer Overflowとは何か?なぜ入力が多すぎると壊れるのか?境界チェック不足の正体(第3回/全10回)
前回は、配列・ポインタ・メモリの関係を見ながら、Buffer Overflowがなぜ起きる ...
Buffer Overflowとは何か?配列・ポインタ・メモリの関係をやさしく理解する(第2回/全10回)
前回は、Buffer Overfloとは何かを学びました。 小さなメモリの箱であるバッファ ...
Buffer Overflowとは何か?黒ネコでもわかる最初の入口(第1回/全10回)
エクスプロイト開発を学び始めると、最初によく出てくる言葉があります。 それが「Buffer ...
GDBで「論理的にExploitを組み立てる思考法」(最終回/全8回)
観測→仮説→検証→修正を回し、再現性を作る(Kali Linux) ここまでで、「止め ...
GDBでメモリを読む 覗いてはいけない場所を覗く(第7回/全8回)
xコマンド/16進数/little endianの壁を壊す(Kali Linux) ...
GDBでレジスタを読む CPUの思考を読む技術(第6回/全8回)
第5回で、スタックは「関数呼び出しの履歴」であり、戻り先情報が積まれる現場だと体感しました ...