# binarybook **Repository Path**: peterhao89/binarybook ## Basic Information - **Project Name**: binarybook - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-17 - **Last Updated**: 2025-06-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ###たのしいバイナリの歩き方 書籍「たのしいバイナリの歩き方」で使用するプログラム一式です。 右のサイドバーにある「Download ZIP」をクリックするとすべてのファイルをダウンロードできます。 出版社ページ http://gihyo.jp/book/2013/978-4-7741-5918-8 著者ブログ(書籍には書けなかった内容などを書いてます) http://07c00.hatenablog.com/ ####正誤表 chap02/guitest2/user.dmpのファイルが異なっていたため、 P90にある説明通りの画面になりませんでした。 user.dmpはすでに更新済みなので現在は問題ありません。 P138,P139のスタックの図において $1,$2,$3 の順序が逆です。 (正確には $1 と $3 が逆になります) P145の syscall.hにおいて各行の先頭が #de ne となっています。 正確には #define です。 また誤植ではありませんが、 P141の実行例にて gdb 内で python を実行するコマンドは、 特殊文字が入り組んでおり分かりにくいですが (gdb)r "\`python -c 'print "A"*80'\`" となっています ####VisualC++ 2010 Express版でのビルド方法 拡張子.slnはVC++のソリューションファイルです。 VC++がインストールされていればそのままダブルクリックするだけでOKです。 その後メニューから デバッグ⇒ソリューションのビルド を選択してください。 Release or Debugフォルダ以下に実行ファイル一式が作成されます。 ####1〜2章のサンプルソースをビルドするときの注意点 chap01とchap02に入っているEXEファイルはASLRをオフに設定しています。 しかしプロジェクトファイル(ソースコード)については ASLRオンのEXEファイルを生成する設定になっています。 そのため、プロジェクトファイルを開き、 ソースコードをそのままビルドして作成したEXEファイルを使うと 本書に書かれている状態とは異なる可能性があります。 (すでにあるEXEファイルを使うばあいは問題ありません) ASLRをオフにしたEXEファイルを作成したいばあいは以下のページを見てください。 http://07c00.hatenablog.com/entry/2013/08/07/033443 ####プロセスダンプするツールを作りたい 2章でプロセスダンプを行うツール(ワトソン博士など)を解説しましたが、 それらを作成することもできます。 プロセスダンプするプログラムを作成してみよう! http://07c00.hatenablog.com/entry/2013/09/07/015519 ####3章のFreeBSDとUbuntu環境について OSごと必要なばあいはそれぞれ以下のURLからダウンロードできます。 FreeBSD-8.3 http://07c00.com/tmp/FreeBSD_8.3_binbook.zip Ubuntu-12.04 http://07c00.com/tmp/Ubuntu-12.04_binbook.zip ログインのためのuser/passは書籍(3章)を確認してください。 Ubuntuで root になる場合は、一度 guest アカウントでログインした後 sudo su コマンドを実行し root になってください。 起動にはVMWare Playerが必要です。 http://www.vmware.com/products/player/ ####P159-P160のcolumnについて P159の「printf系関数に起因するフォーマットストリングバグ」は 以下のページで詳細を解説しています。 興味があれば読んでみてください。 フォーマットストリングバグ(format bug)を試してみる。 http://07c00.hatenablog.com/entry/2013/08/10/112404 ####4章で触れているデバッガ作成やAPIフックについて 4章で触れているデバッガ作成やAPIフックについて Linux環境でやりたいばあいは以下のページが参考になると思います。 http://07c00.hatenablog.com/entry/2013/08/31/142001 http://07c00.hatenablog.com/entry/2013/09/02/003629 ####P226で触れられているCVE-2009-0927の解析動画 本書ではExploitの詳細にはほとんど触れていませんが、 以下の動画でExploitのちょっとした解析をやっています。 興味があれば見てみてください。 Introducing of Security Camp 2013 "Software security class" http://www.youtube.com/watch?v=eUslcqff6_k ####P228-P229のcolumnについて P229の「msfpayloadを使ってWindows環境で動作するshellcodeを作成」で 画像(コンソール)の文字が潰れてよく見えないかもしれません。 ![System Console](pics_for_readme/1.png)