\r\n\r\n
Wiresharkは、ネットワークトラフィックを分析するためのデファクトスタンダードです。Brimはこの問題にうまく対処しており、Wiresharkのワークフローを変えることになるでしょう。
Wiresharkは、オープンソースの優れたソフトウェアです。ネットワークの問題を調査するために、世界中のアマチュアや専門家に利用されています。これは、ネットワークのワイヤまたはイーサネットを介して送信されるパケットをキャプチャします。トラフィックをキャプチャしたら、Wiresharkでデータをフィルタリングおよび検索し、ネットワーク・デバイス間の会話を追跡するなど、さまざまな機能を利用できます。
Wiresharkは素晴らしいが、問題もある。ネットワークデータのキャプチャファイル(ネットワークトレースまたはパケットキャプチャと呼ばれる)は、非常に大きく、非常に高速になることがあります。特に、調査しようとしている問題が複雑であったり、散発的であったり、ネットワークが大規模で混雑している場合には、このようなことが起こりえます。
パケットキャプチャ(またはPCAP)が大きいほど、Wiresharkは遅延します。非常に大きな(1GB以上)トレースを開いて読み込むのに非常に時間がかかるので、Wiresharkが諦めてしまったのではないかと思うかもしれません。
このような大きなファイルを扱うのは、本当に大変なことです。検索を実行したり、フィルタを変更したりするたびに、その効果がデータに反映され、画面上で更新されるのを待たなければならないのです。遅れが生じると、集中力が途切れ、上達の妨げになります。
そんな不幸を救ってくれるのが「エッジ」です。Wiresharkの対話型プリプロセッサおよびフロントエンドとして機能します。Wiresharkが提供できる粒度の大きさを見たいとき、Brimはすぐにそれらのパッケージを開いてくれるのです。
ネットワークキャプチャやパケット解析を多く行う場合、Brimはあなたのワークフローに革命をもたらすことでしょう。
関連:LinuxでのWiresharkフィルタの使用方法
Brimは非常に新しいものなので、Linuxディストリビューションのソフトウェアリポジトリにはまだ入っていません。しかし、Brimのダウンロードページには、DEBとRPMのパッケージファイルがありますので、UbuntuやFedoraにインストールするのは簡単です。
他のディストリビューションをお使いの場合は、GitHubからソースコードをダウンロードし、ご自身でアプリケーションをビルドすることができます。
BrimはZeekロギング用のコマンドラインツールであるzqを使用するため、zqのバイナリを含むZIPファイルもダウンロードする必要があります。
Ubuntuをお使いの場合、DEBパッケージファイルとzqlinuxのZIPファイルをダウンロードする必要があります。Brimのライセンスが「プロプライエタリ」ライセンスと記載されているのは誤りで、BSD Clause 3ライセンスを使用しています。
"インストール "をクリック
インストールが完了したら、zq ZIPファイルをダブルクリックしてArchive Managerアプリケーションを起動します。ZIPファイルにはディレクトリが含まれていますので、Archive Managerからダウンロードディレクトリなど、コンピュータ上の場所にドラッグ&ドロップしてください。
次のように入力して、zqバイナリファイルの場所を作成します。
sudo mkdir /opt/zeek解凍したディレクトリから、先ほど作成した場所にバイナリファイルをコピーする必要があります。以下のコマンドで、コンピュータ上の解凍したディレクトリのパスと名前を置き換えてください。
sudo cp Downloads/zq-v0.20.0.linux-amd64/* /opt/ZeekBASHRCファイルを編集するために、この場所をパスに追加する必要があります。
sudo gedit .bashrcgeditエディタが開きますので、ファイルの一番下までスクロールして、次の行を入力してください。
export PATH=$PATH:/opt/zeek変更を保存して、エディターを閉じます。
FedoraにBrimをインストールするには、RPMパッケージファイル(DEBではない)をダウンロードし、Ubuntuのインストールで説明した手順で行ってください。
興味深いことに、RPMファイルをFedoraで開くと、プロプライエタリ・ライセンスではなく、オープン・ソース・ライセンスであることが正しく認識されるのです。
ドックの「アプリケーションを表示する***」をクリックするか、Super+Aキーを押してください。 検索ボックスに「brim」と入力し、表示されたらクリックしてください。brim "が表示されたとき。
Brimが起動し、メインウィンドウが表示されます。ファイルを選択」をクリックしてファイルブラウザを開くか、PCAPファイルを赤い四角で囲まれた領域にドラッグ&ドロップしてください。
Brimは、複数のタブを同時に開くことができるタブディスプレイを採用しています。新しいタブを開くには、上部のプラス記号(+)をクリックし、別のPCAPを選択します。
Brimは、選択されたファイルをロードし、インデックスを作成します。ブリムが速い理由のひとつに、このインデックスがあります。メインウィンドウには、パケット量の経時変化ヒストグラムと、ネットワークの「ストリーム」リストが表示されます。
PCAPファイルは、多数のネットワーク接続に対するネットワークパケットの時系列ストリームを保持します。様々なコネクションからのパケットが混在するのは、そのうちのいくつかが同時にオープンされるからです。各ネットワークの「セッション」からのパケットは、他のセッションからのパケットと一緒にグループ化されます**。
Wiresharkはネットワークの流れをパケット単位で表示しますが、Brimは「ストリーム」という概念を用いています。ストリームは、2つのデバイス間の完全なネットワーク交換(または会話)です。各ストリームのタイプごとに分類され、色分けされ、ラベルが貼られています。dns」、「ssh」、「https」、「ssl」などのラベルが付いたストリームを見ることができます。ストリームを使用します。
ストリームサマリーの表示を左右にスクロールすると、より多くのカラムが表示されます。また、期間を調整して、閲覧する情報のサブセットを表示することも可能です。データの見方については、以下の通りです。
rimは、左側と右側の2つのサイドペインを表示することができます。これらは、隠すことも、見えるようにしておくこともできます。左ペインには、検索履歴とスペースと呼ばれる開いているpcapのリストが表示されます。Ctrl+[]で左ペインを開いたり閉じたりできます。
右ペインには、ハイライトされたストリームの詳細情報が表示されます。Ctrl+]で右ペインを開閉します。
UID相関」リストで「Conn」をクリックすると、そのストリームのハイライトされた接続マップが開きます。
メインウィンドウでは、ストリームをハイライトしてからWiresharkのアイコンをクリックすることもできます。Wiresharkが起動し、ハイライトされたストリームのパケットが表示されます。
Wiresharkは、関心のあるパケットを開き、表示します。
Brimの検索とフィルタリングは柔軟で包括的ですが、望まないのであれば新しいフィルタリング言語を学ぶ必要はないでしょう。Brimでは、サマリーウィンドウのフィールドをクリックし、メニューからオプションを選択することで、言語**精度の高いフィルタを構築することができます。
例えば、下の画像では、"dns "のフィールドを右クリックしています。そして、コンテキストメニューから「Filter=Value」を選択することにします。
その後、以下のようになります。
同じ手法で、検索語の節を増やすことができる。IPアドレス」フィールドの元のId列(「192.168.1.26」を含む)を右クリックし、コンテキストメニューから「フィルタ=値」を選択することにします。".
これにより、追加の句がAND句として追加されます。ここで、そのIPアドレス(192.168.1.26)から発信されるDNSストリームを表示するようにフィルタリングしてください。
左ペインの検索履歴に、新しいフィルター条件が追加されます。検索履歴」リストの項目をクリックすることで、検索結果を切り替えることができます。
どのDNSストリームが異なるIPアドレスに送信されているかを確認するために、「Idu resputable h」列の「81.139.56.100」を右クリックし、「Filter!"="Values "をコンテキストメニューに表示します。
192.168.1.26からのDNSストリームで81.139.56.100に送信されないものは1つしかなく、フィルターを作成するために何も入力せずにそれを見つけることができました。
HTTP」ストリームを右クリックし、コンテキストメニューから「Filter=Value」を選択すると、サマリーペインにHTTPストリームのみが表示されます。次に、HTTPフィルター句の横にあるピンのアイコンをクリックします。
HTTP句はこれで固定され、他に使用するフィルターや検索語はHTTP句の前に実行されるようになった。
検索フィールドに「GET」と入力すると、検索対象はpinned句でフィルタリングされたストリームに限定される。必要な数だけフィルタリング条項を修正することができます。
HTTPストリーム中のPOSTパケットを検索するには、検索フィールドをクリアして「POST」と入力し、Enterキーを押すだけです。
水平方向にスクロールして、リモートホストのIDを表示します。
すべての検索条件とフィルター条件は履歴リストに追加され、任意のフィルターを再適用するには、それをクリックするだけです。
また、リモートホストを名前で検索することも可能です。
何かを検索したいのにその種類のストリームが表示されない場合は、任意のストリームをクリックして検索フィールドのエントリーを編集することができます。
例えば、rsyncを使って他のコンピュータにファイルを送っているので、PCAPファイルには少なくとも1つのSSHストリームがあるはずですが、それを見ることができません。
そこで、別のストリームを右クリックして、コンテキストメニューから「Filter=Value」を選択し、検索フィールドに「dns」ではなく「ssh」と表示するように編集します。"
エンターキーを押してSSHストリームを検索したところ、1つだけ見つかりました。
Ctrl+]を押すと、このストリームの詳細を表示する右ペインが表示されます。ストリーム中にファイルが転送された場合、MD5、SHA1、SHA256のハッシュが表示されます。
いずれかを右クリックし、コンテキストメニューから「VirusTotal Lookup」を選択すると、VirusTotalのWebサイトでブラウザが起動し、チェックするハッシュを渡します。
VirusTotalは、既知のマルウェアなどの悪意のあるファイルのハッシュを保存しています。これは、ファイルにアクセスできなくなった場合でも、そのファイルが安全かどうかわからない場合に簡単に確認できる方法です。
ファイルが良性であれば、以下のような画面が表示されます。
Brimは非常に大きなパケットキャプチャファイルを扱うことができ、Wiresharkをより速く、より簡単に使用することができます。今日から実行してみてください。