Coder Social home page Coder Social logo

binarybook's Introduction

###たのしいバイナリの歩き方 書籍「たのしいバイナリの歩き方」で使用するプログラム一式です。
右のサイドバーにある「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

binarybook's People

Contributors

kenjiaiko avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

binarybook's Issues

How to get VM images?

Hi~I am a reader of 「たのしいバイナリの歩き方」.I am reading the 3rd chapter but I can't get FreeBSD-8.3 and Ubuntu-12.04 using the URL in your Github README.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.