Jūs ieslēdzāt bezvadu atkļūdošanu, pievienojāt klēpjdatoru, un sesija turpināja darboties, kamēr VPN bija ieslēgts. Tas izskatās tā, it kā kaut kas būtu izslīdējis garām tunelim. Gandrīz noteikti nē. Atkļūdošanas sesija un lietotnes pieprasījums uz vietni ir dažādas tīkla attiecības, un tikai vienai no tām jāšķērso tunelis.

Es ar šo nepareizo lasījumu esmu saskāries divreiz: vienreiz, kad tālrunis un klēpjdators bija vienā Wi-Fi, un vienreiz pēc pārstartēšanas, kad savienošana pārī bija saglabājusies. Abos gadījumos VPN darīja tieši to, kam tas bija konfigurēts.

Nosauciet novērojumu, pirms nosaucat kļūdu

Pirms noplūdes apgalvojuma var notikt trīs notikumi, un tie nav savstarpēji aizstājami. Rīks var atklāt pakalpojumu, ierīce var apstiprināt darbstaciju, vai pilnvarota sesija var patiešām pārvadāt komandas un baitus. Pierakstiet, kuru redzējāt, jo katrs pierāda mazāk, nekā cilvēki pieņem.

Atklāšana parasti ir mDNS vai portu skenēšana. Savienošana pārī ir tālrunī pieņemts reģistrācijas lēmums, ko apstiprina lietotāja ievadīts kods. Dzīva sesija nozīmē, ka trafiks pārvietojās starp diviem savienotiem galapunktiem. Nekas no tā neapraksta, kur dodas lietotnes HTTPS pieprasījums.

Turiet galamērķi, saskarni, adrešu saimi, laika zīmogu un lietotāja profilu piesaistītus notikumam. Bez šīm detaļām novērojumu nevar salīdzināt ar paredzēto vietējā tīkla politiku vai ar toreiz darbojošos VPN versiju.

Kāpēc abi ceļi nekad nesatiekas

Bezvadu atkļūdošana ir ienākošs savienojums uz ierīci. adbd klausās portā, kas piesaistīts Wi-Fi saskarnei, un darbstacija pēc savienošanas pārī pieslēdzas tam. Virzienam ir nozīme: jūsu klēpjdators iekļūst tālrunī, nevis otrādi. Tas ir pretējs izejas noplūdei.

Lietotnes interneta trafiks iziet caur tuneļa saskarni, ko instalē VpnService, saskaņots pēc UID un maršrutēšanas noteikumiem. adbd ir sistēmas dēmons, kas darbojas kā shell lietotājs, nevis lietotne šajā maršrutēšanas kopā. Tas paliek uz pamata Wi-Fi saites pat tad, kad katra lietotne ir piesaistīta tunelim.

Bloķēšanas režīms uzspiež tuneli aptvertajām lietotnēm. Tas nepadara klausošos ligzdu par izejas ceļu.

Tāpēc strādājoša ADB sesija un strādājošs izslēdzējs pastāv līdzās bez pretrunām. Lai pierādītu noplūdi, jānovēro virziens, kuram jābūt bloķētam.

Kā īsti izskatās izejas tests

Testējiet aptverto lietotni, nevis atkļūdošanas kanālu. Apzināti izveidojiet kļūmes nosacījumu, pēc tam veiciet vienu jaunu pieprasījumu un pierakstiet, kas notika.

  1. Apstipriniet, ka VPN ir vienīgais ceļš: ieslēdziet vienmēr ieslēgtu VPN ar savienojumu bez VPN bloķēšanu.
  2. Apturiet VPN atbalstītajā veidā un apstipriniet, ka lietotne ziņo par savienojuma neesamību.
  3. Nosūtiet vienu nekaitīgu pieprasījumu no šīs lietotnes un atzīmējiet, vai tas neizdodas vai izdodas.
  4. Atkārtojiet ar ieslēgtu un pēc tam izslēgtu bezvadu atkļūdošanu, lai mainīgais būtu izolēts.

Bloķēts pieprasījums šādos apstākļos ir pierādījums. Veiksmīga ADB sesija nav, un viens ping no termināļa lietotnes arī nav.

Ja pieprasījums tomēr izdodas, kamēr bloķēšana ir ieslēgta, pierakstiet lietotnes UID un tās VPN atļauju, aktīvo tīklu un klienta versiju. Šī kombinācija ir īsts atradums.

Savienošana pārī pārdzīvo sesiju

Savienošana pārī ir pastāvīgs stāvoklis, nevis rokasspiediens, ko var aizmirst pēc kabeļa testa. Android atkļūdošanas dokumentācija apraksta bezvadu darbplūsmu un norāda, ka attiecības ilgst, līdz tās tiek skaidri aizmirstas vai atļaujas tiek atsauktas.

Pirms vainot tuneli, pārbaudiet, kas vēl ir pilnvarots. Atveriet Bezvadu atkļūdošanu, apskatiet Savienotās ierīces un aizmirstiet visu, ko vairs neatpazīstat. Palaidiet adb devices no darbstacijas, lai redzētu, kuri ieraksti vēl atbild, un adb disconnect, lai atbrīvotos no novecojuša. Bezvadu atkļūdošanas izslēgšana pilnībā aizver klausošos portu.

Koplietotā vai neuzticamā tīklā atstājiet to izslēgtu. Pastāvīgs pilnvarojums tīklā, ko nekontrolējat, ir lielāka problēma nekā hipotētiska TUN apiešana.

Pirms ziņojat par šo kļūdu

Noderīgs ziņojums nosauc precīzu robežu, kas neizdevās. Iekļaujiet ierīces modeli un Android versiju, VPN klientu un versiju, vai bloķēšana bija ieslēgta, lietotnes pakotni un UID, un tīklu, kurā bija tālrunis. Pievienojiet komandu vai pieprasījumu, kas radīja novērojumu, un laiku, kad tas notika. Bez tā neviens nevar reproducēt robežu, kuru jūs saucat par salauztu.

Neizslēdziet izpildi un neatklājiet atkļūdošanu neuzticamā tīklā, lai tests izskatītos dramatiskāks. Tas maina sistēmu, ko mērāt, un atstāj pierādījumus, ko neviens nevar atkārtot.

Ja vienīgais pierādījums ir tas, ka ADB savienojās, kamēr VPN bija ieslēgts, jūs izmērījāt nepareizo ceļu. Vispirms atkārtojiet lietotnes līmeņa testu; atbilde parasti nāk tur.

Saistītie raksti