VPN 使用中でも Little Snitch がブラウザを表示する理由
ローカルのモニタが示すのはソケットを開いたアプリであり、通信を運ぶトンネルではない。新しい時間ウィンドウと拡張機能ビューで両方の層を確認できる。
VPN をオンにして Little Snitch を開くと、ブラウザはトンネルを通っていると思っていたサイトへの接続とともに、そのまま表示されます。その項目自体は漏えいの証拠ではありません。ローカルのモニタが報告するのは、このマシン上でどのプロセスがソケットを開いたかであり、ブラウザがそれを開いたのは事実です。VPN クライアントは、そのパケットを後から受け取る別のプロセスです。両方の記述は同時に正しく、画面は最初のほうを表示しているだけです。
ローカルのモニタが対応付けできることと、できないこと
対応付けはソケットの段階で行われます。カーネルはどのプロセスが接続を所有しているかを知っているため、Little Snitch はアプリ名を高い信頼度で付与できます。既定では見えないのは、VPN がその通信の周囲に構築する外側の接続です。これは別のプロセスに属します。
ドメイン名は見た目より弱い手がかりです。HTTPS 接続では、名前は DNS 問い合わせ、ハンドシェイク中に提示されたサーバー名、アドレスの逆引きのいずれかから来ることがあり、どれによるかはシステムが何を観測したかによります。いずれもページの復号を必要とせず、その後のバイトの行き先を証明するものでもありません。
つまりブラウザの項目が答えているのは「誰が」であり、「どこへ」ではありません。これは対応付けのデータとして扱い、「どこへ」は別のビューから得てください。
第一段階: 履歴をスクロールするのではなく空のウィンドウから始める
古い項目からは現在の設定の動作は分かりません。時間フィルタを「今から」に切り替えるか Command-K を押して、その時点以降に現れる接続だけを表示させます。
次に、調べているアプリで害のない操作をちょうど一つだけ行います。たとえば読み込んでよいページを読み込みます。操作を一つ、時点を一つに絞ることで、現れた項目を推測なしに結び付けられます。完了後は 一、二秒待ってください。ページの読み込みは 一本ではなく、まとまった接続を生みます。一覧が埋まっている途中で読むと、順序を必ず誤判定します。
結果を読む前に、検索フィールドや状態フィルタが一覧を絞っていないか確認します。前のセッションから残ったフィルタは、接続が本当は隠れているだけなのに欠落して見える最も一般的な原因であり、同じマシンを見ている 二人が状況について意見が食い違う原因でもあります。
第二段階: 拡張機能の接続を含めてトンネル自体を見る
現在の macOS では VPN クライアントは通常のアプリではなく、ネットワーク拡張であることがほとんどです。Monitor で「ネットワーク拡張を表示」をオンにすると、その拡張が作る接続がほかのすべてと並んで見えるようになります。
これで 二つの層を一緒に読めます。ブラウザは要求の発生元であり、拡張はそれを運ぶ伝送路です。両方が見えるのは正常で想定どおりです。拡張だけが見える場合はビューが絞られていることが多く、アプリだけが見える場合は拡張機能ビューがオフになっています。
どちらのビューも単独では経路全体を一覧化できません。ルーティング規則、DNS の挙動、アプリごとの例外は接続一覧の外にあり、完全な答えにはそれらを別に確認する必要があります。
第三段階: 実際の直接接続と表示上の効果を区別する
特定の宛先が直接出ている疑いがある場合は、その宛先を名指しして単独で確認します。そのホストやアプリについて VPN クライアント自身のルーティングとブロックの設定を見て、除外されるべきかどうかを確かめます。
やってはいけないのは、反応として表示されているブラウザの項目をすべてブロックすることです。ブラウザは接続を作る必要があり、モニタでブロックしてもトンネルへ転送されるわけではなく、止まるだけです。それでは診断の問いが障害になってしまいます。ルールが必要に見える場合は、正当化できる 一つの宛先に限定し、なぜ存在するのかをメモしてください。
同じ注意はドメイン列にも当てはまります。驚くような名前は、共有ホスト名、コンテンツ配信のエンドポイント、トンネルが上がる前に行われた名前解決かもしれません。それを漏えいの証拠として扱うと、動作している通信を壊すルールにつながります。
第四段階: ビューとルールを分けておく
この演習での変更はすべて、モニタが何を表示するかを変えます。ファイアウォールが何を許可するかは変わりませんし、通信がトンネルに入ったり出たりすることもありません。
終わったら、フィルタを説明できる状態に戻してください。次にウィンドウを開く人が、あなたの残したビューを読むことにならないようにするためです。問いが「宛先がトンネルを通るか」だったなら、ルーティングと除外の設定から答え、そのうえで推測ではなくモニタで結果を確認します。