Terowong terpisah: mengapa pautan terbuka di luar VPN yang anda tetapkan
Penghalaan mengikut proses yang membuka soket, bukan aplikasi yang menunjukkan pautan itu kepada anda. Buktikan program mana yang bersambung sebelum anda meluaskan pengecualian.
Menyalurkan aplikasi melalui terowong tidak membawa penghalaannya kepada semua yang dilancarkan aplikasi itu, walaupun antara muka mencadangkan sebaliknya. Pautan menyerahkan permintaan kepada program lain, program itu membuka soketnya sendiri, dan platform menggunakan peraturan pada proses baharu, bukan pada proses yang memaparkan teks. Proses kedua itulah yang benar-benar dilihat oleh dasar terowong, dan ia bukan proses yang anda tetapkan.
Oleh itu aplikasi yang disertakan boleh membuka pelayar yang berada di luar terowong. Pelayar yang dikecualikan boleh memulangkan kerja kepada aplikasi yang berada di dalamnya. Kedua-dua arah kejutan itu ialah tingkah laku biasa.
Bahagian aliran kerja yang tiada siapa tetapkan
Dasar setiap aplikasi ditulis terhadap identiti fail boleh laku atau pakej, dan setiap sambungan dinilai pada saat ia dicipta. Pelayar, penyampai dokumen, pemain media dan helaian perkongsian sistem masing-masing membawa identitinya sendiri, dan masing-masing menerima keputusannya sendiri. Pautan mendalam membawa data, bukan dasar.
Itulah sebabnya pemerhatian terasa sewenang-wenangnya: klik yang sama dihalakan dua cara bergantung pada pengendali mana yang menjawabnya. Klien mel dalam terowong membuka pautan dalam pelayar yang hidup di luar terowong, dan halaman dimuatkan dari alamat rumah anda. Pelayar di luar terowong membuka dokumen dalam penyampai yang hidup di dalamnya, dan fail itu tiba melalui laluan keluar. Tiada satu pun daripada kedua-dua hasil itu kecacatan pada klien.
Pengendali yang sudah berjalan menjadikannya lebih buruk. Jika pelayar sudah terbuka, pautan menjadi mesej kepada proses yang sedia ada, dan proses itu mengekalkan penghalaan yang dimilikinya semasa bermula. Menutup dan membuka semula pengendali mengubah hasilnya, dan itulah sebabnya masalah ini tidak pernah berulang apabila diminta.
| Platform | Policy object | What it is evaluated against |
|---|---|---|
| Android | Per-app VPN allowlist | Package name of the process opening the socket |
| Windows | Application traffic filters | Application path in the filter rule |
| Linux | UID or cgroup routing rules | Owner of the socket, which can be a different program |
Proses mana yang benar-benar membuat sambungan
Ukur bahagian yang menerima dan bukan menaakul tentangnya. Biarkan terowong aktif, klik pautan yang tidak berbahaya, dan lihat soket yang dipegang oleh program baharu.
ss -tnp state established '( dport = :443 )' Get-NetTCPConnection -State Established | Select-Object RemoteAddress,OwningProcess
Perintah pertama menamakan proses di sebalik setiap soket yang terjalin pada Linux, dan yang kedua melakukan perkara sama pada Windows dengan menyelesaikan pengecam proses pemiliknya. Bandingkan nama proses dengan nama dalam dasar anda. Jika namanya pelayar dan pelayar itu dikecualikan, klik itu keluar dari terowong mengikut reka bentuk dan bukan kerana kerosakan. Memadankan peraturan dasar dengan soket yang hidup ialah keseluruhan kaedah.
Ulang pemeriksaan dengan pengendali sudah berjalan, kemudian dengan pengendali tertutup. Kedua-dua hasil boleh berbeza, dan perbezaan itulah yang menjelaskan kebanyakan laporan sekali-sekala tentang pautan yang terlepas dari terowong.
Liputan ialah sifat aliran kerja
Jika sesuatu tugas mesti kekal di dalam terowong dari awal hingga akhir, setiap komponen yang boleh dicapainya perlu berada di dalam dasar: pelancar, pengendali, penyampai dan mana-mana perantara yang diselitkan platform antara mereka. Liputan yang lebih luas selalunya jawapan yang jujur, dan ia lebih murah daripada mengaudit setiap sasaran perkongsian.
Mengecualikan perantara sistem untuk membaiki satu aplikasi ialah kesilapan biasa. Perantara dikongsi, jadi pengecualian itu mengikut setiap aplikasi lain yang menggunakan laluan sama, biasanya tanpa sesiapa menyedarinya sehingga laporan tiba beberapa minggu kemudian. Baca apa lagi yang bergantung pada komponen itu sebelum mengecualikannya.
Jauhkan identiti daripada penghalaan. Pautan boleh membawa token sesi atau pengecam akaun tanpa mengira laluan keluar mana yang menerima permintaan. Klik yang dihalakan dengan betul masih boleh memberitahu destinasi dengan tepat siapa yang mengikutinya.
Dokumenkan aliran kerja, bukan kotak semak pertama. Apabila tugas merentasi empat program, gambar rajah dengan empat program itulah yang meramal ke mana trafik pergi, dan tetapan satu aplikasi hanyalah satu baris daripadanya.