システムレベルキャプチャ
内部からの平文の読み取りすら許さない対象があります。macOS の内蔵アプリや、特に手ごわく深く隠れたアプリケーションは、あらゆる外部からの干渉を、始まる前に遮断します。システムレベルキャプチャは、プログラムの内部では実行せず、システムの低いレイヤーから観測します。一般的なツールでは近づくことすらできないこうした対象でさえ、その平文を白日の下にさらします。これがローカルキャプチャ方法の切り札です。
この記事は macOS を扱います。Windows では、システムネットワークスタックを経由するシステムプログラム(.NET / PowerShell など)に同等の機能があります。本機のアプリ層キャプチャを参照してください。
1. 「他のツールが手の届かない」ものが見える
Section titled “1. 「他のツールが手の届かない」ものが見える”macOS の内蔵アプリ、システムサービス、あるいはあの手ごわく深く隠れたアプリケーションが、サーバーと何を話しているのかを見たい。通常はどこでも壁にぶつかります。プロキシキャプチャは締め出され(証明書を拒否して単にエラーを投げます)、プログラム内部からの平文の読み取りはシステムの保護に阻まれ、NIC でキャプチャできるのは暗号文だけです。システムレベルキャプチャは、そのやり取りの平文を読み取れる数少ない方法の1つです。
ローカルキャプチャ方法は一段ずつ踏み込んでいき、これはその最後尾に立ちます。
| 対象 | NIC /プロセス単位 | アプリ層キャプチャ | 本機のシステムレベルキャプチャ |
|---|---|---|---|
| 通常のプログラム | ✅ | ✅ | ✅(オーバースペック) |
| 証明書ピンニング/独自暗号 | 🔒 暗号文 | ✅ 平文 | ✅ 平文 |
| 手ごわく高度に隠れたアプリケーション | 🔒 / ❌ | ❌ 干渉を拒否 | ✅ 平文 |
| 内蔵アプリ/システムサービス | 🔒 / ❌ | ❌ 干渉を拒否 | ✅ 平文 |
それより前のどの方法でも対象を扱えないときは、これに任せてください。
2. システムアプリに届く理由
Section titled “2. システムアプリに届く理由”- プログラムの内部では実行しない:内蔵アプリや手ごわいアプリケーションは、プログラムの内部で実行されるあらゆる干渉を遮断するため、アプリ層キャプチャはそれらには効きません。システムレベルキャプチャは別の角度から攻めます。インジェクションなし、プログラムの改変なし、証明書なし。システムの低いレイヤーで帯域外から読み取るため、この保護では止められません。
- 証明書に手を触れない:中間者として振る舞わず、証明書にも一切手を触れないため、証明書ピンニングはそもそも通用しません。これらのアプリケーションの証明書チェックがどれほど厳格でも、影響を及ぼせません。
- 他が届かないレイヤーに届く:macOS の内蔵アプリ、App Store、各種システムサービスは、システムの低レベルのネットワークチャネルを経由します。そこはちょうど、それより前のすべてのキャプチャ方法に共通する盲点です。システムレベルキャプチャはまさにこのレイヤーをカバーし、それらの平文をすべて余さず見せてくれます。
3. 対応できる対象
Section titled “3. 対応できる対象”- 内蔵アプリとシステムサービス:App Store、システムコンポーネント、バックグラウンドサービスなど、macOS 自身のプログラムのネットワークのやり取り。
- 手ごわく深く隠れたアプリケーション:トラフィックを奥深くに埋め込み、あらゆる外部からの干渉を拒むサードパーティ製プログラム。
- 通常のプログラム:もちろんこれらも扱えますが、それはオーバースペックです。通常のプログラムには、それより前の方法のほうが簡単です。
4. 使い方
Section titled “4. 使い方”- 対象を選ぶ:ドロップダウンから実行中のプログラムを選ぶか、プログラムのパス/名前を入力します。
- 任意で**「起動の瞬間」をキャプチャ**:ツールに先にプログラムを閉じさせてから起動し直させると、起動直後のトラフィックもキャプチャできます(多くの認証/ハンドシェイクがその瞬間に行われます)。
- キャプチャを開始し、プログラムが送受信する平文を確認します。


5. キャプチャ後:読みやすく、デコードできる
Section titled “5. キャプチャ後:読みやすく、デコードできる”低いレイヤーから読み取った平文は、他のすべてのキャプチャ方法と同じ処理を経ます。
- 複数の表示モード:構造化表示、テキスト整形、16進、そして自動判別があり、送信側と受信側で個別に切り替えられます。データの表示とデコードを参照してください。
- 自動展開と自動判別:gzip / brotli / deflate / zstd を自動展開し(多重に重なった圧縮も含む)、JSON、XML、protobuf / gRPC などを自動判別して整形します。
6. 4つのローカルキャプチャ方法の選び方
Section titled “6. 4つのローカルキャプチャ方法の選び方”| あなたの状況 | 使うべき方法 |
|---|---|
| macOS の内蔵アプリ、手ごわいアプリケーション(他の方法では届かない) | 本機のシステムレベルキャプチャ(この記事) |
| すでに実行中のプログラム/証明書ピンニング/プロキシを受け付けない/独自暗号 | 本機のアプリ層キャプチャ |
| コマンドで起動できる通常のプログラム(ブラウザ/スクリプト/CLI) | 本機のプロセス単位のキャプチャ |
| マシン上のすべてのトラフィック、または非 HTTP トラフィックを見たい | 本機の NIC キャプチャ |
関連:プロキシキャプチャ · 本機のアプリ層キャプチャ · データの表示とデコード