Wireshark + libemu for shellcode detection のバックアップ(No.1)〜


Tips

libemuによるシェルコード検知機能を追加したWiresharkを試験的にGPLで公開しています。

Wireshark+libemu 0.0.0

主な機能

パケットヘッダーペインで怪しいデータを選択し、右クリックメニューから「Detect a shellcode」を選択すると、シェルコードが見つかった場合、それをお知らせするダイアログボックスが表示されます。バイトコードペインに、シェルコードに該当する部分がハイライトされます。見つからなかった場合は、ハイライトされません。

利用したソース

Wireshark 1.3.3 SVN revision 31147

利用したlibemu

libemu 0.2.0 SVN revision 2151

コンパイルおよび動作実績

コンパイルの手順

  1. 圧縮ファイルを展開する
    $ tar xvzf wl-0.0.0.tgz
  2. aclocal.m4などconfigureファイルに必要なファイルを生成する
    $ ./autogen.sh
  3. Makefileを作成する(ヘッダファイルとライブラリのパスは環境に合わせて変更してください)
    $ ./configure --enable-emu \
      --with-emu-include=/opt/libemu/include \
      --with-emu-lib=/opt/libemu/lib/libemu
  4. wiresharkをビルドする
    $ make

使い方

  1. Wiresharkを起動する
    $ ./wireshark
  2. ネットワークトラフィックを記録する
  3. (記録を停止する)
  4. パケットリストペインから怪しいパケットを選択する
  5. パケットヘッダーペインから怪しいフィールドを選択する

    #ref(): File not found: "select.png" at page "Wireshark + libemu for shellcode detection"

  6. そのフィールドで右クリックし、「Detect a shellcode」を選択する

    #ref(): File not found: "menu.png" at page "Wireshark + libemu for shellcode detection"

  7. シェルコードが見つかったら、ダイアログでシェルコードの場所(オフセット)を表示するとともに、バイト表示ペインにシェルコードのバイトコードがハイライトされる

    #ref(): File not found: "detected.png" at page "Wireshark + libemu for shellcode detection"

  8. シェルコードがみつからなかったら、ダイアログで「Not found a shellcode」と表示される

    #ref(): File not found: "notdetected.png" at page "Wireshark + libemu for shellcode detection"

その他


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS