問題タブ [tshark]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wireshark - コマンド ラインを使用してフィルタからパケット バイトを取得する
tcp.port==80
たとえば、特定のフィルターを検索した後に出力がバイト単位のパケットになるコマンドを探しています。
今まで私はこのコマンドを使用しています:tshark.exe -Y tcp.port==80 -n -r file.pcap
出力はパケットの詳細のみです:
sip - コマンド ラインからの VoIP コールの検出 - Wireshark
Wireshark を使用してネットワークを盗聴し、VoIP 通話を検出しています。検出された VoIP コールは、GUI から確認できます (テレフォニー -> VoIP コール)。
コマンドラインからこのリストを取得したいと思います。Wireshark のドキュメントを検索しましたが、それを行うコマンドが見つかりませんでした。
私は次のようなコマンドを使用しています
このトピックから : tshark を使用した VoIP 通話のフィルタリング
コマンドラインからその voip 通話リストを表示するコマンドはありますか、それとも出力を解析して独自のリストを作成する必要がありますか? それを行うための他のツールをお勧めしますか?
どんな助けでも大歓迎です。
lua - lua dissector を実行し、同時に tshark をタップします
現在のプロジェクトの多くの側面で使用しているカスタム ディセクタ (Lua で記述) があります。
また、特定のタスクに対して特定の計算を実行するためのタップも書きたいと思います。モジュール性のために、これを汎用ディセクタとは別にしたいと思います。
tshark コマンドラインから、両方とも Lua で記述されたディセクタとタップを呼び出す方法はありますか? より一般的に言えば、任意の数の Lua スクリプトを呼び出すことができますか? その場合、それらは正しい順序で呼び出されますか?
編集: コマンドラインから2つのスクリプトを呼び出してみました:
しかし、私はエラーが発生します:
この行が参照するフィールド名は で作成されたものですが、ロード中my_diss.lua
は明らかに表示されません。my_tap.lua
ffmpeg - Wireshark キャプチャから RTP パケット固有のフィールドを抽出する方法
PCAPNG ファイルがあり、そこから RTP パケットを取得する必要があります。具体的には、RTP パケットの 1 つが次のようになります...
フレーム N: ワイヤ上の X バイト...
- イーサネット II、ソース: ...
- IPv4、ソース: ...
- TCP、送信元ポート: rstp ...
- RTSP インターリーブ フレーム、チャネル: 0x02、163 バイト
- リアルタイム トランスポート プロトコル
...そして、各パケットから必要なものは...
- RTSP インターリーブ フレームからのチャネル
- RTSP インターリーブ フレームからの長さ
- RTP からのペイロード
...このデータを使用して、オーディオ ファイルとビデオ ファイルを再作成し、ローカル ペイロードから完全なビデオを再構築します (再生はストリーミングではありません)。
どちらかを使用してRTPパケットを正常に取得できます...
tshark -r my.pcap -R -T フィールド -e rtp.payload -w rtp.out
また...
tshark -r my.pcap -R -T フィールド -e rtp.payload > rtp.out
...しかし、私が抱えている問題は、最初の方法では必要なものがすべて保存されることですが、何らかの理由で余分なデータ (つまり、RTP ペイロードと RTSP インターリーブ フレームの内容以上のもの) が奇妙な場所に追加されることです...テストに必要なデータを生成するためのプログラムを作成できません。いくつかの正規表現を使用して余分なデータをすべて削除しようとしましたが、他の有効なシナリオと重複するシナリオが多すぎます。
2 番目の方法は、必要なインターリーブされたプロパティを含まない RTP ペイロードのみを提供します (各バイト間にコロンを含む 16 進数を生成しますが、これは簡単に処理できます)。すべての RTSP インターリーブ フレーム プロパティを取得するために別の呼び出しを行うことができたとしても、回避したい区切り記号/区切り記号を使用して各パケットを識別することにより、2 つの出力を結合する必要があります (tshark を取得できませんでした)。それを行うには...)。
tshark 読み取りフィルターを調べたところ、必要なことを実行できるはずですが、これまでのところ、それを理解できていません。これは、サンプル データを作成し、再生に必要なデータをフォーマットするロジックを記述するためだけに行っていることに注意してください。最終的に、同僚の 1 人がストリーミング クライアントを変更して、データを適切な形式でキャプチャする予定です (そのため、データを変更せずに ffmpeg を介してデータを実行することができます)。必要なフォーマットを作成する方法についてのアイデアはありますか?
networking - ドメインによるフィルタリング
ドメインで pcap ファイルをフィルタリングしたい。つまり、「.com」、「.org」、または「.net」で終わる Web サイトにパケットが来るのを見たいのです。
試してみました:dnsには「com」、ip.src_host == com、ip.src_host == com、httpには「com」が含まれています。それらのどれも正しく機能しませんでした。