実行形式モジュールのプロファイリング

ふと思いついたのでメモ。既存でありそうな気もするが。

ネットから入手したちょっとしたアプリなど、安全であることを期待して実行するわけだけど実際のところわからない。たとえば姓名判断プログラムの振りをしたスパイウェアだっとしても気がつかないかもしれない。

そこでだ、モジュールが使うAPIを分析して、このアプリはネットワークに接続するとかレジストリを触るとか、そういうプロファイリングしてくれると参考になりそう。基本的にWindowsで言うとDependency Walkerのやってることが出来れば良いわけで。あとはプログラミングの知識がない人が見てもわかるような言葉で結果を出力するだけ。

Windows用なら作ろうと思えば時間さえあれば自分でも作れそうだけど、完成度を高めるのが面倒に思われる。ネットワークにつなぐAPIはこれとこれとこれと…とか、そういう情報をちゃんとデータ化しないとアカンからなあ。あと、動的ロードを解析するのは難しそう。