コンテンツにスキップ

NIC キャプチャ

プロキシキャプチャが見せてくれるのは「トラフィックのうちプロキシを通る部分」です。NIC キャプチャは、このマシンの NIC を流れるすべてを見せます。DNS、QUIC、ゲーム、IoT、あらゆる独自プロトコル。NIC を横切るものは、すべて目の前に並びます。そして従来のキャプチャツールから大きく一歩進んでいます。キャプチャした HTTPS はもはや暗号文の山ではなく、復号でき、送った相手に帰属させられ、分解して理解できるものになります。


1. プロキシキャプチャとの違い

Section titled “1. プロキシキャプチャとの違い”

この 2 つは互いを補い合うキャプチャ方式で、それぞれに得意なユースケースがあります。

プロキシキャプチャ NIC キャプチャ
どうやって取り込むか トラフィックをプロキシ経由にする + 証明書を信頼させる NIC 上の生パケットを直接キャプチャ、設定を変えることも証明書を入れることもなし
何が見えるか プロキシを通ったトラフィック、主に HTTP(S) NIC 上のすべてのトラフィック: DNS、QUIC、ICMP、ARP、あらゆる TCP / UDP…
デフォルトで平文? デフォルトで平文 デフォルトは暗号文。必要なときにワンクリックで「このプログラムを復号」(下記参照)
向いている場面 HTTP API のデバッグ、書き換え / 再送 非 HTTP トラフィックの確認、プログラムがネットワーク上で行うことをすべて見る、システムレベルの変更を一切避けたい

ひとことで言えば、**プロキシキャプチャは「精密」、NIC キャプチャは「網羅的」**です。アプリがどのアドレスにひそかに接続し、どのプロトコルを使っているかを正確に知りたいなら、NIC キャプチャがすべてを白日の下にさらします。


2. 従来の NIC キャプチャツールとの違い

Section titled “2. 従来の NIC キャプチャツールとの違い”

従来の NIC キャプチャツールもパケットを取得できますが、キャプチャした HTTPS は暗号文の山であり、しかもどのプログラムが送ったのか分かりません。NIC キャプチャは「キャプチャできる」を土台に、「理解できる、たどれる」を埋めていきます。

  • 復号できる: プログラムの HTTPS を、暗号文からワンクリックで平文に戻します(セクション 4 参照)。暗号文をただ眺めるしかない、ということがありません。
  • 誰が送ったか分かる: すべてのフローに送信元プロセスのタグが付くので、ノイズの多い環境でも一目で特定できます。
  • 相手の素性をたどれる: リモート IP をクリックすれば、そのホストプロファイル(帰属 / 地理 / 証明書)へ直行します。
  • 分解して理解できる: キャプチャしたデータは自動で解凍され、フォーマットが検出され、構造化された形で表示されます。独自プロトコルはカスタムデコーダーでデコードできます(セクション 6 参照)。
  • Wireshark にも渡せる: プロ向けのパケット単位の分析が必要なときは、ワンクリックでトラフィックを Wireshark へライブ転送でき、そこでは平文で開きます。別のマシンでも構いません。

  1. NIC を選ぶ: マシン上のすべての NIC が自動で一覧表示され、現在アクティブなものがデフォルトで選択されています。
  2. 開始前に、必要ならフィルターを設定: 気になるトラフィックだけをキャプチャするには、キャプチャフィルターを入力します。よく使うプリセット(TLS / HTTP / QUIC / DNS / TCP / UDP / ICMP / ARP / SSH など)が組み込まれており、ワンクリックで適用できます。

    キャプチャフィルターは開始前に設定するもので、キャプチャの実行中は変更できません。これは NIC レイヤーで「何をキャプチャするか」を決めます。すでにキャプチャ済みのデータの中で絞り込むには、パケットビューの「表示フィルター」を使います(セクション 6 参照)。

新規セッション · NIC キャプチャ: NIC を選んでキャプチャを開始。設定を変えることも証明書を入れることもなし。キャプチャした HTTPS は「このプログラムを復号」でワンクリック復号できる


4. 平文を見る: 暗号文を平文にする 3 ステップ

Section titled “4. 平文を見る: 暗号文を平文にする 3 ステップ”

NIC からキャプチャしたトラフィックはデフォルトで暗号文です(中間者を介さず、そのままキャプチャするため)。平文を見る方法は 3 段階あり、それぞれ前の段を補います。

  1. 自動復号: ブラウザや Electron アプリなどの一般的なプログラムは、キャプチャした瞬間にたいてい平文で、追加の手順は要りません。
  2. 手動の「このプログラムを復号」: 自動で復号できないプログラムは、「このプログラムを復号」をクリックして選択すると、その暗号化トラフィックが復号されます。複数のプログラムを同時に復号することにも対応しています。
  3. 2 つの補強スイッチ:
    • プログラムを再起動: 対象を最初から起動し直し、その起動直後の暗号化トラフィックまで、他と一緒に復号します。
    • 子プロセスをワンクリックで処理: 一部のプログラムは子プロセスを通じてトラフィックを送受信します。このチェックを入れると子プロセスも処理するので、取りこぼしがありません。

一般的なプログラムはキャプチャした瞬間に平文で、それ以外も「このプログラムを復号」を手動で 1 回クリックすれば復号されます。暗号文を平文にするのは、たいてい 1 ステップで済みます。


5. 2 つのビュー: パケット単位と、コネクション単位

Section titled “5. 2 つのビュー: パケット単位と、コネクション単位”
  • パケットビュー: プロ向けのキャプチャツールと同じように、各パケットを 1 つずつ見られます。フレームを選ぶと、フレーム情報、生バイト、そしてレイヤーごとに展開されるプロトコルツリーが見られます。検索ボックスは Wireshark 形式の表示フィルター(tcp.port==443tls.handshake など)に対応し、入力中にリアルタイムで構文を検証するので、キャプチャした全データの中から何でも突き止められます。

パケットビュー: NIC からキャプチャした実際のパケットを、表示フィルター dns で突き止める。フレームを選ぶとフレーム情報とレイヤーごとに展開されたプロトコルツリーが見られる

  • コネクションビュー: 散在したパケットを個々のコネクションに再構成し、「ストリームを追跡」でコネクション全体の送受信を最初から最後まで見られます。HTTP / DNS なども構造化された形で表示できます。

コネクションビュー: 散在したパケットを個々のコネクションに再構成し、DNS / TLS / HTTP / 生の TCP をプロトコルごとに分類。このマシンが誰と話しているか一目で分かる

  • 右クリック操作: 任意のフレームを右クリックして、このコネクションだけを表示 / このコネクションに絞り込む(表示をこの 1 つに狭める)、フレームにマークを付ける送信元 / 宛先アドレスをコピー、あるいはリモート IP についてホストプロファイルを表示 / ping / ポートスキャンへ直行して、調査の次の一手につなげられます。
  • 2 つのビューは相互にリンクしています(コネクションからその生パケットへ飛んだり、パケットからコネクション全体を追跡したり)。
  • 統計: 3 つの表(プロトコル階層、会話、エンドポイント)にまたがるサマリーを、任意で現在のフィルター結果だけを対象に表示でき、「誰が帯域を使っていて、誰と話しているか」を素早く把握できます。
  • いつでも一時停止: キャプチャの途中で一時停止し、それまでにキャプチャしたものを見て、状況を把握してから続けられます。長時間のセッションでも、開始と停止を繰り返す必要はありません。

6. キャプチャした後: 理解する、デコードする

Section titled “6. キャプチャした後: 理解する、デコードする”

同じ 1 つのデータを複数の方法で表示でき、エンジンが自動でデコードします。この機能はすべてのキャプチャ方式に共通で、ここでも同じように使えます。

  • 複数の表示方法: 構造化、整形済みテキスト、16 進、自動検出を、方向ごとに独立して切り替えられます。詳しくは確認とデコードを参照してください。
  • 多数のエンコーディングを自動検出: 復号された HTTP コンテンツは gzip / brotli / deflate / zstd(何層も重なったものを含む)を自動で解凍し、JSON、XML、フォーム、protobuf / gRPC、plist を自動検出して整形し、画像 / 音声 / 動画をインラインでプレビューします。詳しくは確認とデコードを参照してください。
  • カスタムコーデック: 独自 / 社内向けのプロトコルには、短いスクリプトを書いて読み方を教え、フレームを分割し、ヘッダーを取り除き、解凍して読める構造にします。詳しくはカスタムプロトコルのデコードを参照してください。

7. HTTP/3 への対応: QUIC トラフィックもキャプチャして復号する

Section titled “7. HTTP/3 への対応: QUIC トラフィックもキャプチャして復号する”

HTTP/3 (QUIC) へ切り替えるアプリはますます増えていますが、QUIC は NIC レイヤーでのキャプチャも復号もずっと難しく、多くのツールはここで単に立ち止まってしまいます。NIC キャプチャは両方向から対応します。対象アプリを HTTP/3 から通常の接続へなめらかにフォールバックさせて再びキャプチャ・復号できる状態にでき(セッションを停止すると自動的に元へ戻り、その後のアプリの通常利用に影響しません)、鍵が利用できるときには QUIC / HTTP/3 を直接復号して平文を表示することもできます。

つまり、完全に HTTP/3 へ移行したアプリでも、手を触れられない QUIC の山を前になすすべなく眺めるのではなく、その平文のやり取りをちゃんと見られるのです。


8. Wireshark への継ぎ目のない引き渡しで深掘り分析

Section titled “8. Wireshark への継ぎ目のない引き渡しで深掘り分析”

Wireshark レベルのプロ向けパケット単位の分析が必要なとき、2 つのツールの間でエクスポートを行き来し続ける必要はありません。ワンクリックでこのセッションのトラフィックを Wireshark へライブ転送すれば、追加設定なしで平文で開きます復号鍵はトラフィックと一緒に、逐次ライブで注入されるので、遅れて届いた鍵も補われ、フレームを失いません。

トラフィックを別のマシンの Wireshark へ送ることもでき、このマシンがキャプチャと復号を担い、もう一方が分析に専念します。リモート協業や共同トラブルシューティングに自然になじみます。

  • ファイルへのエクスポートも可能: 復号鍵を埋め込んだ .pcapng(Wireshark で開けば平文)、または標準の HAR をワンクリックでエクスポートし、同僚に渡せば、他に何も設定せずそのまま開けます。

こうして両方の良さをまとめて手にできます。本ツールの「復号 + プロセス帰属 + ワンクリックのホストプロファイル」に、Wireshark の深いパケット単位の分析を加えられるのです。


  • 非 HTTP トラフィックの確認: DNS、QUIC、ゲーム、IoT、あらゆる独自プロトコル。プロキシで捕まえられないものも、NIC なら捕まえられます。
  • プログラムがネットワーク上で行うことをすべて把握: 実際にどのアドレスへ接続し、どのプロトコルを使い、「ひそかな」接続がないかどうか。
  • システムプロキシを変えたくない、証明書を入れたくない: 直接キャプチャ、侵襲ゼロ。
  • 独自プロトコルへの対処: 生のフローをキャプチャした後、カスタムデコーダーで読める構造へ復元します。
  • Wireshark に渡して深掘り: プロ向けのパケット単位の分析が必要なときは、ライブ転送すれば追加設定なしで平文で開きます

プロキシキャプチャに戻る · 関連: 確認とデコード · カスタムプロトコルのデコード · ホスト詳細