パケット解析する方法にも色々あります。Windowsにおける一般的なパケットを得る手法についてまとめてみました。
- パケットキャプチャ方式(RAWソケットを用いて、NIC上のパケットダンプ)
- wsock32.dll, 又はws2_32.dllへのsend(), recv()呼び出しに対するHookによるパケットの横取り。
- wsock32.dll, 又はws2_32.dllに対するラーバーDLLによる横取り。
1の方法は、Windowsに限らないだけでなく、手元に対象となるプログラムがなくても可能です。その代わり、パケットのプロトコルを推測で解析していかなければならないので、かなりマゾいです。また、パケットの改竄等の様な用途には向いていません。
2、3の方法は共に非常に強力なのですが、DLLのエクスポートテーブルが上手くとれない場合、Hook法は上手く行きません。ラッパーDLL法はラッパーを作るのがめんどくさいのですが、自動でDLLを解析してラッパーDLLの雛形を作成してくれるツールがあります。
「ちょクロシステム」 h
ttp://www.chiyoclone.netPR