2011-07-26 10 views
1

Tsharkはコマンドラインパケットスニファです。私は、パケットから情報を取得し、それを変数に入れ、それに正規表現を行う方法を見つけようとしています。Tsharkからのデータのキャプチャ

今、私はtsharkのからこれを取得しています:

Capturing on eth0 
    0.000000 74.125.71.116 -> 112.204.184.111 TCP http > 55828 [ACK] Seq=1 Ack=1 Win=6434 Len=0 TSV=2558834852 TSER=542043 
    0.000035 112.204.184.111 -> 74.125.71.116 HTTP Continuation or non-HTTP traffic 
    0.000043 112.204.184.111 -> 74.125.71.116 HTTP Continuation or non-HTTP traffic 

注:私は、Rubyを使用しています。

+0

どのような情報を抽出しますか?そして、あなたはそれ(正規表現を使用して)で何をしていますか? –

+0

私はビデオのURL、例えば、.flv、mp4、ビデオサイトからのm4vファイルなどを探しています。 –

答えて

0

あなたはどちらかでしパイプ、このデータをあなたがして、開いているファイルへとRubyで解析し、またはあなたのような、同じデータにアクセスすることができRubyのLIBを使用することができます。http://sourceforge.net/apps/trac/rubypcap/

+0

どのようにデータをファイルにパイプしますか? –

+0

'tshark -R http.request.full_uri -T fields -e http.request.full_uri >> output.txt' –

3

あなたはなしtshark自体を使用することができます別のユーティリティ。このコマンドは、プリントアウト、すべてのURIの彼らが到着すると、パケットからの:

$ tshark -R http.request.full_uri -T fields -e http.request.full_uri -i en0 

あなたはより良いあなたの要件に合致するようにdisplay filter-Rパラメータ)を絞り込むことができます。 それもにマッチするPerlの正規表現をサポートしています。

# Mac OS X 
$ tshark -R 'http.request.full_uri matches "\\.jpg\|\\.js"' -T fields -e http.request.full_uri -i en0 

youtube.comを訪問からの出力例:

$ tshark -R 'http.request.full_uri matches "\\.jpg\|\\.js"' -T fields -e http.request.full_uri -i en0 
Capturing on en0 

http://s.ytimg.com/yt/jsbin/www-core-vfl3_mVgh.js 
http://s.ytimg.com/yt/jsbin/www-subscriptions-vfl5HwfxW.js 
http://i2.ytimg.com/i/QMbqH7xJu5aTAPQ9y_U7WQ/1.jpg?v=95416b 
http://i1.ytimg.com/vi/4R0BAjrZqyY/default.jpg 
http://i4.ytimg.com/i/KVtW8ExxO21F2sNLtwrq_w/1.jpg?v=a1fa0c 
http://i3.ytimg.com/vi/z3U0udLH974/default.jpg 
http://i2.ytimg.com/vi/arKyyDRsE_8/default.jpg 
http://i2.ytimg.com/vi/y1TGz-fEyiE/default.jpg 
http://i2.ytimg.com/vi/-tc983PZK3o/default.jpg 
http://i2.ytimg.com/vi/1yT2rrTyMK8/default.jpg 
http://i4.ytimg.com/vi/cciUXpITsu0/default.jpg 
http://i2.ytimg.com/vi/uG0dimAxHpI/default.jpg 
http://i2.ytimg.com/vi/eP9P50kbzTk/default.jpg 
http://i1.ytimg.com/vi/ppBe0T412uU/default.jpg 
http://i1.ytimg.com/vi/8360wVLtEuk/default.jpg 
http://i4.ytimg.com/vi/G_yB7wdTxa0/default.jpg 
http://i4.ytimg.com/vi/gcZxoLs3NIU/default.jpg 
http://i1.ytimg.com/i/po2fJvnalYlwN97ehhyfBQ/1.jpg?v=b8e52a 
http://i1.ytimg.com/vi/D2Xjj_ra8lQ/default.jpg 
http://i1.ytimg.com/vi/PewewGu9gp8/default.jpg 
http://i1.ytimg.com/vi/P9FkRD6ppGo/default.jpg 
http://i3.ytimg.com/vi/vpZ4SMU4znQ/default.jpg 
http://i3.ytimg.com/vi/jrrSGulNOLc/default.jpg 
http://i3.ytimg.com/vi/FJtTzQfdnoQ/default.jpg 
http://i3.ytimg.com/vi/68sEHPpQXes/default.jpg 
http://i2.ytimg.com/vi/iWYqsaJk_U8/default.jpg 
http://i4.ytimg.com/vi/7Prb8DbdfwY/default.jpg 
http://i1.ytimg.com/vi/HJFlxLJSX8E/default.jpg 
http://i1.ytimg.com/vi/ta6Vu_v7VLg/default.jpg 
http://i1.ytimg.com/vi/Hq7NtDSIErE/default.jpg 
http://i4.ytimg.com/vi/Sjdj7qhcTuw/default.jpg 
http://i3.ytimg.com/vi/Nm3Acf3_oMY/default.jpg 
http://i3.ytimg.com/vi/BpsrThXh_gM/default.jpg 
http://i3.ytimg.com/vi/Z3yapgewktY/default.jpg 
http://i3.ytimg.com/vi/2UFc1pr2yUU/default.jpg 
http://i2.ytimg.com/vi/q_Bt6NwD4FY/default.jpg 
http://i2.ytimg.com/vi/uTAAlzABzBA/default.jpg 
http://i2.ytimg.com/vi/iRLUY6dMF8k/default.jpg 
http://i2.ytimg.com/vi/-cDH6CYzTAw/default.jpg 
http://i1.ytimg.com/vi/8p6Fn8R1Rc4/default.jpg 
http://i1.ytimg.com/vi/T8gDQWdlW6A/default.jpg 
http://i2.ytimg.com/vi/ERTcZV7uTFU/default.jpg 
http://i1.ytimg.com/vi/PyxgwA6PvnI/default.jpg 
http://i1.ytimg.com/vi/xUGlezOCvu4/default.jpg 
http://i1.ytimg.com/vi/Ljb6Mne8Mfc/default.jpg 

注:Windowsの中、私はtshark印刷に特にすべてのURIを見てきましたパケットを区切り文字なしで1行に挿入します(例:"http://www.google.comhttp://www.google.com/logos/classicplus.png")。一部のパケットだけがこの影響を受けました。

関連する問題