問題タブ [packet-capture]
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.
linux - Linux でのネットワーク トラフィックのキャプチャ
質問: Windows ラップトップ 1 台、Linux ラップトップ 1 台、およびワイヤレス ルーターを 1 台持っています。
ここで、hotmail/windows ライブ プロトコルを「調査」したいと思います。私がやりたいことは、ネットワーク トラフィックを Windows ラップトップからイーサネット経由で Linux ラップトップにルーティングし、それを Linux コンピューターでキャプチャし、ワイヤレスでルーターに転送し、ルーターからの hotmail 応答を Linux コンピューターで受信して、ウィンドウズ コンピューター。
それ、どうやったら出来るの?要するに、Linux ラップトップを Windows ラップトップとルーターの間で切り替えて、ネットワーク トラフィックをキャプチャしますか?
キャプチャ/分析に最適なプログラムはどれですか? なんらかの理由で、Windows コンピュータで winpcap を使用したパケット キャプチャが機能しないことに注意してください...
shell - tcpflow 出力からペイロードを抽出する
Tcpflow は一連のファイルを出力しますが、その多くは Web サーバーからの HTTP 応答です。内部には、 Content-type: を含む HTTP ヘッダーと、その他の重要なものが含まれています。ペイロード データ (つまり、image/jpeg; text/html; など) だけを抽出してファイルに保存できるスクリプトを作成しようとしています [オプション: 適切な名前とファイル拡張子を付けて]。
EOL 文字は \r\n (CRLF) であるため、GNU ディストリビューションでの使用が困難になります (私の経験では)。
私は次の行に沿って何かを試してきました:
HTTP (incl) の先頭から \r\n\r\n (incl) の末尾までのすべてのテキストを削除するには、うまくいきませんでした。sed
および/またはの経験が豊富な方からの助けを求めていますawk
。私は Perl の経験がありません。これには一般的な GNU コマンド ライン ユーティリティを使用したいと思います。
サンプルの tcpflow 出力ファイルはこちらにあります。(悪いリンク)
ありがとう、
フェリペ
c++ - tcpdump を使用してサーバーとクライアントの通信をキャプチャする
TCP、DCCP、および UDP プロトコルを切り替えることができる単純なサーバーおよびクライアント アプリを作成しました。目標は、あるファイルから別のファイルに転送し、各プロトコルのトラフィックを測定することでした。これにより、さまざまなネットワーク設定でそれらを比較できます (結果がどうなるかは大まかにわかっていますが、正確な数値/グラフが必要です)。とにかく、異なるコンピューターで両方のアプリを起動して tcpdump を起動した後、4GB ファイルから最初の数 MB (~50MB) しか tcpdump ログに記録されません。アプリは標準の C/C++ コードで記述されており、Web 上のどこにでもあります。ここで何が問題なのか、何が間違っているのでしょうか?
--編集
私が使用するコマンドラインは次のとおりです。
tcpdumpは、最初の ~55 秒だけパケットをキャプチャします。それは、クライアントがファイルをソケットに送信する必要がある時間です。その後、サーバーはファイルの受信とハード ドライブへの書き込みを続けますが、停止します。
--編集 2
ソースコード:
client.cpp
server.cpp
common.hpp
common.cpp
--最終編集
多くの人が指摘したように (そして私が疑ったように)、ソース コードにはいくつかの誤解/バグがありました。クリーンアップした後 (またはほとんど書き直した後)、必要に応じて tcpdump で動作します。@Laurent Parenteau からの回答を受け入れますが、問題に関連するのはポイント 5のみです。誰かが正しいコードに興味があるなら、ここにあります:
ソースコード編集
network-programming - Windowsでワイヤレスパケットをイーサネットインターフェイスに転送する方法は?
Windowsでワイヤレスパケットをイーサネットインターフェイスに転送する方法は?
c# - H.225ユーザー情報パケットの解析
PacketDotNetとSharpPCapを使用して、VOIP電話システムのH.225パケットを解析するコードを書いています。Wiresharkを使用して構造を調べてきましたが、行き詰まっています。これを参考にしています。
私が見るH.225パケットのほとんどは、メッセージ本文が空のユーザー情報タイプであり、実際の情報は、WiresharkのNonStandardControlsのリストとして表示されているようです。これらのコントロールを抽出して後で解析するだけだと思いましたが、どこから始まるのかはよくわかりません。
ほとんどの場合、アイテムはH.225データの10バイト目から始まります。各項目は、2バイトとして記録された長さで始まっているように見えます。しかし、11バイト目から始まるアイテムを含むパケットを取得しています。
このパケットに見られる唯一の違いは、メッセージ本文にオープンタイプの長さと呼ばれる値が1であるものですが、残りはすべて0のように見えます。アイテムは10 +オープンタイプの長さで始まりますか?このOpenTypeの長さが何のためにあるかを説明するドキュメントはありますか?
ありがとう。
java - 両方向の流れを考慮するためにcompareToメソッドをカスタマイズする方法
このロジックでコードをカスタマイズする必要がある場合
双方向フローを検討するため、送信元から宛先へのパケットと宛先から送信元へのパケットはフローに属します。
コードを変更するにはどうすればよいですか?
network-programming - トラフィックシェーパーとアナライザーを構築したい場合、何を学び、何を探すべきですか
WIPFW のようなものを追加して構築するのが好きですが、トラフィック シェイパー オプションを使用する場合、Windows ドライバー プログラミングで何を学ぶ必要がありますか? ドライバーのプログラムを簡単にするコードラッパーはありますか?
c# - HTTP を使用して C# でデバイスの組み込み制御ソフトウェアを制御するにはどうすればよいですか?
デバイスの IP アドレスを Web ブラウザに入力してアクセスするユーザー コントロールが組み込まれたハードウェアがあります。デバイスは、x-over イーサネット ケーブルと静的 IP を介して PC に直接接続されています。デバイスの制御を C# アプリケーションに統合する必要があります。
私が考えたのは、パケット スニファーを使用して PC とデバイス間のトラフィックを監視すると同時に、Web ブラウザーでデバイスのコントロールを操作することでした。次に、PC が送信しているパケットが、その時点で使用しているコントロールに対応していることを確認します。次に、C# アプリケーションで HTTP または TCP パケットのクラスを作成し、Socket クラスを使用してそれらをデバイスに送信します。
しかし、私はネットワーク プロトコルの経験があまりないため、Wireshark を使用して PC とデバイス間のトラフィックを監視しているときに、どのパケットが何を行っているかを調べるときに、どこから始めればよいかわかりません。誰にもアイデアはありますか?私は何に対してもオープンです。ありがとう!!
編集:私のデバイスが何であるかを正確に説明するのは難しいですが、基本的には精巧なセンサーであり、通常は産業用アプリケーションで使用されるため、私がある程度慣れているModbusを使用している可能性があります. パケットを調べて、どのプロトコルが使用されているかを知る方法を知っていますか? (Wireshark を使用して) PC からデバイスに送信されるパケットが 1 つの HTTP パケット、次に 5 つの TCP パケットのパターンで発生し、ブラウザでコントロールが開いている限り同じシーケンスが繰り返されることに気付きました。何が起こっているのかをよりよく理解できるリソースはありますか?
linux - パケットキャプチャを処理するためのNotepad++に似たLinuxテキストエディタ
LinuxテキストエディタでNotepad++が持つ非常に特殊な機能を探しています。
tcpdump -x
ネットワークトラフィックの16進ダンプを取得するために使用する場合、Notepad ++を使用するAltと、-mouse-selectを実行してから、左の16進を簡単に削除できますDelete。いくつかの短い置換スペースとラインリターンにより、これを変えることができます:
...これに、はるかに読みやすくなります:
では、このタイプのデータを簡単に切り抜けることができるLinuxテキストエディタを知っている人はいますか?
java - 受動的なスニッフィングからプログラムでパケットを収集するにはどうすればよいですか?
中間者攻撃に対するサーバーの脆弱性をテストしたいと思います。
どのように (Mac OS X 上で) パケットを分析しますか? (私は彼らがどこに向かっているかをチェックし、彼らが私のサーバーに向かっているかどうかから情報を引き出し、すべてが利用可能かどうかを確認します) それから、すべてを暗号化する方法を見つけます... しかし、まず最初に.
パケット スニッフィングに関するヘルプをいただければ幸いです。
私の好きな言語はJavaです。しかし、C++ はできます。
ですから、私の質問は次のとおりです。「インターフェイスできる API やライブラリはありますか?」
同様に、PacketSniffer ps = new PacketSniffer(); を実行できれば、それは素晴らしいことです。