Oznaka VPN-a na uređaju ili adresa izlaza: šta šta dokazuje?
Mrežna oznaka pročitana na uređaju i adresa koju vidi server različiti su dokazi. Odredite koja od njih treba vašem pitanju.
Aplikacija na telefonu i udaljeni server počinju s različitim činjenicama i nijedan ne može posuditi tuđe. Aplikacija može pitati operativni sistem o mreži koju koristi, dok server zna samo ono što stigne kroz vezu. Pokretanje vlastite izlazne točke prepisuje drugo i ostavlja prvo netaknutim. Koje će od njih odgovoriti na vaše pitanje zavisi od samog pitanja.
Dvije točke posmatranja, dvije vrste dokaza
Lokalni dokazi opisuju uređaj. Pokrivaju interfejs koji nosi promet, transport koji platforma prijavljuje i ono što aplikacija koja zove smije tražiti. Udaljeni dokazi opisuju vezu: izvorna adresa, protokol, vrijeme i sve što aplikacija odluči poslati. Nijedna točka posmatranja nije nadskup one druge.
Miješanje dvoga daje tvrdnje koje zvuče tačno i ne mogu se provjeriti. Oznaka dokazuje nešto o mrežnom objektu na uređaju, ne o tome kako udaljena usluga klasifikuje zahtjev.
Prije rasprave o otkrivanju, zapišite na koju se točku pitanje odnosi. Je li pitanje može li određena aplikacija uočiti da je tunel aktivan, ili može li usluga zaključiti odakle zahtjev dolazi? To su odvojena istraživanja i odgovor na jedno ne govori ništa o drugom.
Šta lokalni interfejs platforme može prijaviti
Android nudi posebnu oznaku. Objekt NetworkCapabilities može prijaviti TRANSPORT_VPN, a hasTransport provjerava je li taj transport prisutan na objektu. Aplikacija dobija objekt od usluge povezivosti i čita ga, uz dozvolu za stanje mreže.
Rezultat je lokalna informacija platforme, a ne pretraga raspona adresa pružaoca. Opisuje mrežu koju aplikacija koja zove koristi.
Dvije granice su važne. Pravilo podijeljenog tunela koje isključuje aplikaciju može dati drugačiji odgovor na istom telefonu od onoga koji kolega vidi, jer aplikacija može biti vezana negdje drugdje. Oznaka postoji i zato što OS modelira VPN interfejse, a ne zato što je prikuplja neka određena aplikacija. Čita li aplikacija to polje, prosljeđuje li ga ili ga ignorira, svojstvo je te aplikacije. Njen manifest i dokumentacija jedini su pouzdan izvor za to pitanje.
adb shell dumpsys connectivity | grep -i -m5 vpn
Šta udaljena usluga može vidjeti
Server vidi izvornu adresu veze, transport i vrijeme, a adresu može obogatiti podacima registra ili rutiranja. Može primiti i sve što aplikacija pošalje, uključujući lokaciju kada je aplikacija zatraži i korisnik pristane. Ti su kanali odvojeni i samo jedan liči na pretragu adrese.
Adresa registrovana kod hosting pružaoca upućuje na tunel, dok adresa registrovana na stambenoj mreži upućuje na kućnu vezu. Obje su statistički nagovještaji, ne činjenice o uređaju.
Stambena adresa ne smješta osobu na tu adresu, a hosting adresa ne imenuje operatera ni zemlju. Usluga koja zaključak tretira kao sigurnost ponekad će pogriješiti, a da to ne može otkriti. Ako se traži pouzdanost, a ne heuristika, podaci o adresi to ne mogu pružiti, i dizajn koji to priznaje iskreniji je od onoga koji skriva nagađanje.
| Dokaz | Na šta odgovara | Šta ne može pokazati |
|---|---|---|
| Lokalna oznaka transporta | Je li ovaj mrežni objekt VPN | Ko upravlja izlazom ili gdje je uređaj |
| Udaljena izvorna adresa | Koja je adresa stigla do usluge | Nosi li uređaj i tunel |
| Sadržaj aplikacije | Šta je aplikacija odlučila poslati | Sve što aplikacija nije poslala |
Zašto samostalno hostovan izlaz mijenja samo jednu stranu
Pokretanje vlastite izlazne točke mijenja izvornu adresu koju udaljena usluga vidi, što je može pomjeriti izvan raspona koje ta usluga povezuje s komercijalnim pružaocima. U lokalnom mrežnom modelu ne mijenja ništa, jer tunel ostaje tunel i OS ga i dalje prijavljuje.
Jedna strana dokaza se kreće, druga ostaje nepomična. Jaz između njih mjesto je gdje se očekivanja lome.
Pregledač je treći slučaj sa svojim interfejsima i ograničenjima. Web sadržaj ne može čitati izvorni objekt mogućnosti, a tretirati funkciju mobilnog OS-a kao dostupnu web stranici je greška u kategoriji. Ako se pitanje tiče web stranice, proučite šta web stranica zaista može dobiti umjesto da preslikavate API platforme.
Odlučite prema pitanju koje postavljate
Ako je pitanje može li određena aplikacija posmatrati stanje tunela, interfejs platforme je pravo mjesto za pogled, a odgovor je u kodu i dozvolama te aplikacije. Ako je pitanje šta usluga može zaključiti, dokaz su metapodaci veze. Pravno ili ugovorno pitanje ne rješava nijedno od toga.
Imenujte pitanje jednom rečenicom prije nego što bilo šta prikupite. Ta rečenica odlučuje koja je točka posmatranja važna i čuva istraživanje od skretanja u drugu raspravu.
Označite svako posmatranje po njegovom izvoru kada ga izvještavate, jer tvrdnja bez oznake ne može se pregledati. Lokalna oznaka i zaključak iz adrese oboje su korisni i nijedno nije konačno, zato je njihovo spajanje u jedan sud greška.
Kada usluga odbije ovlaštenu vezu, koristite njen podržani put za pregled umjesto da mijenjate lokalnu postavku kako biste sakrili signal. Uklanjanje jednog posmatranja nikada ne dokazuje da su ostala nestala.