Je zet de VPN aan, opent Little Snitch en de browser staat er meteen, met een verbinding naar een site waarvan je dacht dat die door de tunnel liep. Die vermelding is op zichzelf geen bewijs van een lek. Een lokale monitor meldt welk proces op deze machine een socket heeft geopend, en de browser heeft hem geopend; de VPN-client is een tweede proces dat die pakketten daarna oppakt. Beide uitspraken zijn tegelijk waar, en het venster toont je de eerste.

Wat een lokale monitor wel en niet kan toeschrijven

Toeschrijving gebeurt bij de socket. De kernel weet welk proces een verbinding bezit, dus kan Little Snitch een vermelding met grote zekerheid van de appnaam voorzien. Wat hij standaard niet ziet, is de buitenverbinding die de VPN rond dat verkeer bouwt, want die hoort bij een ander proces.

Domeinnamen zijn een zwakker signaal dan ze lijken. Bij een HTTPS-verbinding kan de naam uit een DNS-query komen, uit de servernaam die tijdens de handshake wordt aangeboden, of uit een omgekeerde zoekopdracht van het adres, afhankelijk van wat het systeem heeft waargenomen. Niets daarvan vereist het ontsleutelen van de pagina, en niets bewijst waar de bytes daarna heen gingen.

De browservermelding antwoordt dus op wie, niet op waar. Behandel hem als toeschrijvingsgegevens en haal het waar uit een andere weergave.

Stap een: begin met een leeg venster in plaats van door de geschiedenis te scrollen

Oude vermeldingen kunnen je niet vertellen wat de huidige configuratie doet. Zet het tijdfilter op Vanaf nu, of druk op Command-K, zodat het venster alleen verbindingen toont die na dat moment verschijnen.

Doe daarna precies één onschuldig ding in de app die je onderzoekt, bijvoorbeeld een pagina laden die je mag laden. Eén handeling, één moment, zodat de vermeldingen die verschijnen er zonder giswerk aan gekoppeld kunnen worden. Wacht een seconde of twee nadat het klaar is, want een paginalading levert een golf verbindingen op en niet één. De lijst lezen terwijl hij nog volloopt, garandeert dat je de volgorde verkeerd beoordeelt.

Controleer voordat je het resultaat leest of een zoekveld of statusfilter de lijst vernauwt. Een filter dat van een eerdere sessie is blijven staan, is de meest voorkomende reden dat een verbinding ontbreekt lijkt terwijl hij alleen verborgen is, en het is ook de reden dat twee mensen die naar dezelfde machine kijken het oneens zijn over wat er gebeurt.

Stap twee: neem extensieverbindingen op om de tunnel zelf te zien

De VPN-client is op een actuele macOS-versie meestal een netwerkextensie en geen gewone app. Zet Netwerkextensies tonen aan in de Monitor en de verbindingen die die extensie maakt, worden zichtbaar naast al het andere.

Nu kunnen de twee lagen samen worden gelezen. De browser is de oorsprong van het verzoek, en de extensie is het transport dat het draagt. Beide zien is normaal en te verwachten; alleen de extensie zien betekent meestal dat de weergave is gefilterd, terwijl alleen de app zien betekent dat de extensieweergave uit staat.

Geen enkele weergave brengt alleen de hele route in kaart. Routeringsregels, DNS-gedrag en eventuele uitzonderingen per app staan buiten de verbindingslijst, dus een volledig antwoord vereist dat die apart worden gecontroleerd.

Stap drie: onderscheid een echte directe verbinding van een weergave-effect

Als je vermoedt dat een bepaalde bestemming er direct uit gaat, noem die bestemming en controleer hem op zichzelf. Kijk naar de eigen routerings- en blokkeringsconfiguratie van de VPN-client voor die host of app, en bevestig of die uitgesloten hoort te zijn.

Wat je niet moet doen, is als reactie elke zichtbare browservermelding blokkeren. De browser moet zijn verbindingen toch maken, en ze in de monitor blokkeren leidt ze niet de tunnel in; het stopt ze alleen. Dat maakt van een diagnosevraag een storing. Als een regel nodig lijkt, beperk hem dan tot het ene doel dat je kunt rechtvaardigen, met een notitie waarom hij bestaat.

Dezelfde voorzichtigheid geldt voor de domeinkolom. Een naam die je verrast, kan een gedeelde hostnaam zijn, een eindpunt voor contentlevering, of een opzoeking die plaatsvond voordat de tunnel opkwam, en hem als bewijs van een lek behandelen leidt tot regels die werkend verkeer breken.

Stap vier: houd de weergave en de regel gescheiden

Elke wijziging in deze oefening verandert wat de monitor toont. Geen ervan verandert wat de firewall toestaat, en geen ervan verplaatst verkeer de tunnel in of uit.

Als je klaar bent, zet de filters terug in een staat die je kunt uitleggen, zodat de volgende persoon die het venster opent niet een weergave leest die jij hebt achtergelaten. Als de vraag was of een bestemming door de tunnel gaat, beantwoord die dan vanuit de routerings- en uitsluitingsinstellingen, en gebruik daarna de monitor om het resultaat te bevestigen in plaats van erover te gissen.

Gerelateerde artikelen