はじめて学ぶバイナリ解析 をレビューする

簡単な紹介

 初歩的なところからバイナリ解析を説明している本。コンピュータのメモリ周りの解説とデバッガを用いた動的解析が中心的な話題となっている。

扱っている話題

 BufferOverFlow, x86のレジスタ, Gdb-pedaの利用法, アセンブラ(x86)の基本的な書き方, システムコールの使い方の触り, 関数のプロローグ・エピローグ, Return to libc, シェルコードの送信, BufferOverFlowを防ぐセキュリティ機構

感想

 バイナリ解析の本だが、セキュリティ分野に寄った内容で、CTFの分類ではPwnに近い内容だと感じた。

 バイナリ解析は、機械語のファイルを解読する作業である。プログラムの動作を調べることを目的としており、リバースエンジニアリングでよく行われる。基本的には表層解析->動的解析->静的解析の順で進めるもので、この本では特にデバッガを用いた動的解析に焦点があたっている。

 Pwnに近い内容だと感じたのは、実行ファイルを解析した後に、そのプログラムに存在する脆弱性を利用したExploitを書くところまでが演習になっているからだ。

 実際にBufferOverFlowを起こして、その動作を読み解くことで、解析の手順と同時にプログラムの動作やメモリ周りの機構についても理解が深まるようになっている。

 内容はとても理解しやすい。文章が平易であり、用語の説明も豊富であった。中身の操作については、配布されている演習環境で同様のことが行えるので、実行しながら確認することで理解が進められた。

 バイナリ解析のより詳しい内容、セキュリティ機構の詳しい紹介は潔く省いてあるので、他の本を参考にすること。

読む前に知って置くこと

 前提知識がなくても十分に読みこなせるのではないか。

次に読む本

 調査中

基本情報

タイトル:

 はじめて学ぶバイナリ解析 不正なコードからコンピュータを守るサイバーセキュリティ技術

発行日:

 2020年2月21日 ー 初版発行

著者:

 小林佐保、岡田怜士、浅部佑、満永拓邦

発行:

 株式会社インプレスR&D

購入ページ