Защо Little Snitch все още показва браузъра под VPN?
Локалният монитор посочва приложението, отворило сокета, а не тунела, който го пренася. Нов времеви прозорец и изгледът на разширенията показват двата слоя.
Включвате VPN, отваряте Little Snitch и браузърът е точно там — със връзка към сайт, който смятахте за прекаран през тунела. Този запис сам по себе си не е доказателство за изтичане. Локалният монитор съобщава кой процес е отворил сокет на тази машина и браузърът наистина го е отворил; VPN клиентът е втори процес, който поема тези пакети след това. И двете твърдения са верни едновременно, а екранът ви показва първото.
Какво локалният монитор може и какво не може да припише
Приписването става при сокета. Ядрото знае кой процес притежава връзката, затова Little Snitch може да маркира запис с името на приложението с висока увереност. Това, което по подразбиране не вижда, е външната връзка, която VPN изгражда около този трафик, защото тя принадлежи на друг процес.
Домейн имената са по-слаб сигнал, отколкото изглеждат. При HTTPS връзка името може да дойде от DNS заявка, от името на сървъра, предложено при ръкостискането, или от обратно търсене на адреса — според това какво е наблюдавала системата. Нищо от това не изисква разшифроване на страницата и нищо не доказва къде са отишли байтовете после.
Значи записът на браузъра отговаря на въпроса „кой“, а не „къде“. Третирайте го като данни за приписване и вземете „къде“ от друг изглед.
Стъпка първа: започнете от празен прозорец, вместо да превъртате история
Старите записи не могат да ви кажат какво прави текущата конфигурация. Превключете времевия филтър на „От сега“ или натиснете Command-K, така че прозорецът да показва само връзките, появили се след този момент.
След това направете точно едно безобидно нещо в приложението, което изследвате — например заредете страница, която ви е позволено да заредите. Едно действие, един момент, за да могат появилите се записи да бъдат свързани с него без догадки. Изчакайте секунда-две след завършването, защото зареждането на страница поражда вълна от връзки, а не една. Четенето на списъка, докато още се пълни, гарантира, че ще прецените реда погрешно.
Преди да прочетете резултата, проверете дали поле за търсене или филтър за състояние не стеснява списъка. Филтър, останал от предишна сесия, е най-честата причина връзка да изглежда липсваща, когато е само скрита, и също причина двама души, гледащи същата машина, да не са съгласни какво се случва.
Стъпка втора: включете връзките на разширенията, за да видите самия тунел
VPN клиентът в съвременна версия на macOS обикновено е мрежово разширение, а не обикновено приложение. Включете „Показване на мрежовите разширения“ в Monitor и връзките, които това разширение прави, стават видими заедно с всичко останало.
Сега двата слоя могат да се четат заедно. Браузърът е източникът на заявката, а разширението е транспортът, който я носи. Да виждате и двете е нормално и очаквано; да виждате само разширението обикновено значи, че изгледът е филтриран, а само приложението — че изгледът на разширенията е изключен.
Нито един изглед сам по себе си не описва целия път. Правилата за маршрутизиране, поведението на DNS и всякакви изключения за отделни приложения живеят извън списъка с връзки, затова пълният отговор изисква те да се проверят отделно.
Стъпка трета: различавайте истинска директна връзка от ефект на показването
Ако подозирате, че определена дестинация излиза директно, назовете тази дестинация и я проверете отделно. Вижте собствената конфигурация за маршрутизиране и блокиране на VPN клиента за този хост или приложение и потвърдете дали трябва да бъде изключена.
Това, което не бива да правите, е да блокирате в отговор всеки видим запис на браузъра. Браузърът все пак трябва да осъществява връзките си и блокирането им в монитора не ги пренасочва в тунела; то само ги спира. Така диагностичен въпрос се превръща в прекъсване. Ако правило изглежда необходимо, ограничете го до едната дестинация, която можете да обосновете, с бележка защо съществува.
Същото предпазване важи и за колоната с домейни. Име, което ви изненадва, може да е споделено име на хост, крайна точка за доставка на съдържание или заявка, станала преди тунелът да се вдигне, и третирането му като доказателство за изтичане води до правила, които чупят работещ трафик.
Стъпка четвърта: дръжте изгледа и правилото отделно
Всяка промяна в това упражнение променя какво показва мониторът. Нищо от нея не променя какво разрешава защитната стена и нищо не мести трафик в тунела или извън него.
Когато приключите, върнете филтрите в състояние, което можете да обясните, за да не чете следващият човек, който отвори прозореца, изглед, оставен от вас. Ако въпросът беше дали дадена дестинация минава през тунела, отговорете от настройките за маршрутизиране и изключване, после използвайте монитора, за да потвърдите резултата, вместо да гадаете.