De telefoanapp en de fiere tsjinner begjinne mei ferskillende feiten, en gjinien kin de feiten fan de oare liene. De app kin it bestjoeringssysteem freegje oer it netwurk dat er brûkt, wylst de tsjinner allinnich wit wat oer de ferbining oankomt. As jo jo eigen einpunt draaie, wurdt it twadde oerskreaun en bliuwt it earste ûnoantaaste. Hokker fan beide jo fraach beantwurdet, hinget fan de fraach sels ôf.

Twa waarnimmingspunten, twa soarten bewizen

Lokale bewizen beskriuwe it apparaat. Se omfetsje de ynterface dy’t ferkear draacht, it ferfier dat it platform rapportearret, en wat de oanropende app freegje mei. Fiere bewizen beskriuwe de ferbining: boarneadres, protokol, tiid en alles wat de app beslút te stjoeren. Gjin waarnimmingspunt is in oerboppeset fan it oare.

It mingen fan de beide jout bewearingen dy’t krekt klinke en net kontrolearre wurde kinne. In markear bewiist wat oer in netwurktopjekt op it apparaat, net oer hoe’t in fiere tsjinst it fersyk klassifisearret.

Foardat jo oer deteksje diskusjearje, skriuw dan op hokker punt de fraach oangiet. Giet it derom oft in bepaald app fernimme kin dat in tunnel aktyf is, of derom oft in tsjinst ôfliede kin wêr’t it fersyk wei kaam? Dat binne aparte ûndersiken, en in antwurd op ien seit neat oer de oare.

Wat in lokale platformynterface rapportearje kin

Android biedt in bepaald markear. It objekt NetworkCapabilities kin TRANSPORT_VPN rapportearje, en hasTransport testet oft dat ferfier op it objekt oanwêzich is. De app krijt it objekt fan de ferbiningstsjinst en lêst it, ûnder foarbehâld fan tastimming foar netwurkstatus.

It resultaat is lokale platformynformaasje, gjin sykjen yn ’e adresrigels fan in oanbieder. It beskriuwt it netwurk dat de oanropende app brûkt.

Twa grinzen binne wichtich. In split-tunnelregel dy’t in app útslút kin op deselde telefoan in oar antwurd jaan as in kollega sjocht, om’t de app earne oars bûn wêze kin. It markear bestiet ek om’t it bestjoeringssysteem VPN-ynterfaces modellearret, net om’t in bepaald app it sammelet. Oft in app it fjild lêst, trochjaan of negearret is in eigenskip fan dy app. Syn manifest en dokumintaasje binne de iennige betroubere boarnen foar dy fraach.

adb shell dumpsys connectivity | grep -i -m5 vpn

Wat in fiere tsjinst sjen kin

In tsjinner sjocht it boarneadres fan de ferbining, it ferfier en de tiid, en hy kin it adres ferrike mei register- of rûtegegevens. Hy kin ek alles ûntfange wat de app stjoert, ynklusyf lokaasje as de app dat freget en de brûker ynstimt. Dy kanalen binne apart, en mar ien liket op in adressykjen.

In adres registrearre by in hostingoanbieder suggerearret in tunnel, wylst ien registrearre op in wenwyknetwurk in thúsferbining suggerearret. Beide binne statistyske hints, gjin feiten oer it apparaat.

In wenadres pleatst de persoan net op dat adres, en in hostingadres neamt de operator of it lân net. In tsjinst dy’t de ôflieding as wissichheid behannelet, sil soms ferkeard wêze sûnder dat te kinnen ûntdekke. As de eask betrouberens is yn stee fan in heuristic, kinne adresgegevens dat net leverje, en in ûntwerp dat dat seit is earliker as ien dat it riedsel ferberget.

BewiisWat it beantwurdetWat it net sjen litte kin
Lokaal ferfiermarkearOft dit netwurktopjekt in VPN isWa’t de útgong betsjinnet of wêr’t it apparaat is
Fier boarneadresHokker adres de tsjinst berikt hatOft it apparaat ek in tunnel draacht
AppbelestingWat de app keas te stjoerenAlles wat de app net stjoerd hat

Wêrom in sels hoste útgong mar ien kant feroaret

Jo eigen einpunt draaie feroaret it boarneadres dat in fiere tsjinst sjocht, wat it bûten de rigels bringe kin dy’t dy tsjinst mei kommersjele oanbieders ferbynt. It feroaret neat yn it lokale netwurkmodel, om’t de tunnel in tunnel bliuwt en it bestjoeringssysteem him noch altyd rapportearret.

Ien kant fan ’e bewizen beweecht; de oare bliuwt fêst. De kleau dertusken is wêr’t ferwachtings brekke.

In browser is in tredde gefal mei eigen ynterfaces en beheiningen. Webynhâld kin gjin lânseigen kapasiteitsobjekt lêze, en in funksje fan in mobyl bestjoeringssysteem as beskikber foar in webside behannelje is in kategoryflater. As de fraach in webside oangiet, ûndersykje wat in webside echt krije kin, yn stee fan in platform-API te transliterearjen.

Bepaal mei de fraach dy’t jo stelle

As de fraach is oft in bepaald app de tunnelstatus waarnimme kin, is de platformynterface it goede plak om te sjen, en it antwurd leit yn ’e koade en tastimmings fan dy app. As de fraach is wat in tsjinst ôfliede kin, binne ferbiningsmetagegevens it bewiis. In juridyske of kontraktuele fraach wurdt troch gjin fan beide besljocht.

Nammje de fraach yn ien sin foardat jo wat sammelje. Dy sin beslút hokker waarnimmingspunt fan belang is en hâldt it ûndersyk derfan ôf om nei in oare diskusje te driuwen.

Bemarkje elke waarnimming neffens syn boarne as jo dy rapportearje, om’t in ûnbemarke bewearing net neisjoen wurde kin. In lokaal markear en in adresôflieding binne beide nuttich en gjinien is beslissend, dêrom is it in flater om se yn ien oardiel te smelten.

As in tsjinst in autorisearre ferbining wegere, brûk dan syn stipe werbesjenrûte yn stee fan in lokale ynstelling te feroarjen om in sinjaal te ferbergjen. It fuortheljen fan ien waarnimming bewiist nea dat de oaren ferdwûn binne.

Relatearre artikelen