takaha.siの技術メモ

勉強したことをお伝えします。ちょっとでも誰かの役に立てればいいな…

最近のディスアセンブラとかデバッガとかの話

ちょっとリバースエンジニアリングマルウェア解析ではない)をしないといけなくなったのでそこらへんのツールを探してみた。ここらへんの知識が2008年ぐらいで止まってるので、情報更新。

デバッガ

昔、バイナリ解析と言ったらOllyDbgが有名だったと思うんですが2014年を最後に更新が止まってしまっているようです。

じゃあ今の人たちは何を使ってるのかなぁ?って探すとx64dbgってのがいいみたいです。ちなみにx64と命名されてますが32bit版もあります。

x64dbg.com

OSS(GPLv3)でGitHubで開発されています。

コマンド体系は(MS製でWindowsのでバドラ開発とかに使う)WinDbgに似てるかなぁ。という感じ。bp ReadFileとかでWin32APIにブレークポイントしかけられます。

「いいなぁ」と思ったのは「ユーザーコードまで実行」というコマンドがあることで、これは嬉しいなと思いました。リバースエンジニアリングってのはWin32APIを手がかりにブレークポイント引っ掛けて、そこから解析していくと思うんですが、その時このコマンドを使えば、一気に解析対象のソフトウェアコードまで戻るわけです。

ディスアセンブラ

みんな憧れのIDA Proはまだ現役らしいですね。20年以上この業界でデファクトスタンダードの地位に留まれているのは素晴らしい。

とはいえ、IDA Proは10万円以上する高価なソフトウェアなので、別に本業でマルウェア解析してるわけでもない私みたいな個人が手軽に手を出すのはちょい辛いかなと思います。

ただ、IDA FreewareってのがあってIDA Proの機能限定版がタダで使えます。

www.hex-rays.com

ディスアセンブラなんですが、ディスアセンブルしたコードの参照関係のグラフを出してくれるのが嬉しいです。この昨日はIDA Freewareでも省かれてないので嬉しい。