Softgate Limited

株式会社ソフトゲート コーポレートブログ

Practical Reverse Engineering

今日はちょっとサボりで、Amazon のレビューに書いたものを、そのまま掲載します。

Practical Reverse Engineering という洋書に対して書いたものです。

Practical Reverse Engineering というタイトルに惹かれて購入してみましたが、いまいちどんな読者層を想定した書かれた書籍なのかピンと来ませんでした。

最初の二章で x86, x64 と ARM のアセンブリ言語やシステムについて非常に簡単に説明した後、続く二章で kd を使いながら Windows のシステム内部のデータ構造や実装を確認したり、COM オブジェクトの DbgEng と Windbg を利用したスクリプティングの実例を披露します。最後の章は駆け足で IDA Pro などのいろんなツールを紹介しながら、仮想化も含めていわゆる「難読化」されたターゲットを解析する話題に触れています。

一応はマルウェア解析のための知識を途中途中で提供しているつもりらしいのですが、マルウェア解析の解説書と呼ぶには、ちょっと余計な Windows の実装の解説が多すぎる上に、肝心のマルウェアに関しては逆に実例の扱いが少ない気がします。Windows の内部は Windows Internals あたりの書籍を参照してもらうことにして、もっと話題を狭く深く掘り下げた方がよかったのではないかと感じました。

Windbg や kd の使い方をかなり多くの実例を交えて紹介してくれる点においては、この本はユニークと言えばユニークかもしれません。ただ、世の中には Ollydbg や Immunity を使ったチュートリアルやプラグインが溢れているわけで、たとえば初心者がこの本で Windbg を学んでも、その後に頼るべき文献や情報源がありません。あえて Windbg を学ばなければならない特殊な事情がある人(どういう人だか分かりませんが)以外には、いまひとつ存在意義を見いだせない書籍に思えたというのが正直な感想です。

リバースエンジニアリング学びたいなら、他の本の方がお勧めです。

新しいものではリバースエンジニアリングバイブル あたりがいいかもしれません。