Android injoron trokitjen e miratimit të VPN? Kontrollo së pari shtresën
Një buton pëlqimi që nuk pranon trokitjen është zakonisht një pengesë lokale e prekjes, jo një defekt i serverit ose i llogarisë. Hiq shtresën dhe mbaj mbrojtjen.
Trokit butonin e miratimit të VPN dhe dialogu nuk reagon. Përfundimi i natyrshëm është se aplikacioni VPN ose serveri është prishur, kështu që njerëzit rivendosin fjalëkalimet, ndryshojnë DNS ose riinstalojnë klientin. Zakonisht asgjë nga kjo nuk e prek defektin, sepse Android i hedh poshtë prekjet që vijnë përmes një pengese, dhe ekrani i miratimit të VPN është pikërisht ai lloj kërkese e ndjeshme pëlqimi që merr atë mbrojtje. Trokitja nuk arrin kurrë te butoni.
Çfarë po refuzon në të vërtetë mbrojtja
Android mbron ndërveprimet e ndjeshme nga tapjacking, kur një dritare tjetër qëndron mbi një dialog dhe ose e vjedh trokitjen ose e bën të paqartë. Një pamje e aktivizon këtë me View.setFilterTouchesWhenObscured, dhe ngjarja vjen duke mbajtur MotionEvent.FLAG_WINDOW_IS_OBSCURED kur një dritare tjetër është shënuar si pjesërisht ose plotësisht errësuese. Kur kjo ndodh, ngjarja hidhet poshtë në vend që të dorëzohet në vendin e gabuar. Android 12 (API 31) zgjeroi të njëjtën mbrojtje me bllokimin e prekjeve të pabesueshme në sipërfaqet e pëlqimit të sistemit, prandaj dialogu i miratimit mund të refuzojë një trokitje nga një shtresë që aplikacionet e tjera do ta pranonin ende.
Tri gjëra krijojnë rregullisht një pengesë: një aplikacion që mban lejen për t'u shfaqur mbi aplikacione të tjera, një shërbim aksesueshmërie që vizaton përmbajtje dhe një widget lundrues nga një regjistrues ekrani ose një mjet filtri. Disa veçori ekrani të prodhuesit shtojnë edhe shtresën e tyre, prandaj i njëjti dialog mund të sillet ndryshe në dy telefona me të njëjtin version Android. Një dritare që errëson pjesërisht vendos FLAG_WINDOW_IS_PARTIALLY_OBSCURED, dhe trokitja hidhet poshtë para se butoni ta shohë atë. Kjo është një veti e ekranit, jo e rrjetit. Në momentin kur trokitja hidhet poshtë, asgjë nuk është dërguar te serveri VPN, prandaj asnjë ndryshim nga ana e serverit nuk mund të ndikojë në rezultat.
Ndaj një trokitje të vdekur nga një lidhje e dështuar
Ky dallim është i gjithë diagnoza dhe zgjat dhjetë sekonda. Nëse trokitja injorohet dhe dialogu mbetet saktësisht si ishte, pengesa është lokale. Nëse dialogu mbyllet dhe më pas shfaqet një gabim, pëlqimi u pranua dhe keni kaluar në një fazë tjetër që kërkon informacionin e vetë ngjarjeve të aplikacionit VPN.
Mund ta konfirmoni leximin lokal duke kontrolluar nëse aplikacioni që kërkon ka provuar qoftë edhe një lidhje. Një klient që nuk regjistron kurrë një përpjekje shtrëngimi duarsh ndërsa një dialog pëlqimi është në ekran nuk ka arritur në rrjet.
adb shell cmd appops get com.example.vpn SYSTEM_ALERT_WINDOW
adb shell settings get secure enabled_accessibility_servicesRenditni kush mban lejen e shtresës dhe cilat shërbime aksesueshmërie janë aktive, pastaj krahasojini me ato që po ekzekutohen. Mos e çaktivizoni vetë mbrojtjen e platformës; është pikërisht ajo që pengon një dritare të fshehur të përgjigjet në emrin tuaj një kërkese pëlqimi.
Hiq pengesën, pastaj ripërsërit rrjedhën normale
Së pari identifikoni aplikacionin që kërkoi miratimin e VPN, që të dini çfarë pëlqimi po jepni. Pastaj ndaloni shtresën e caktuar përmes cilësimit të saj, në vend që të revokoni një leje të gjerë që mund t'ju duhet më vonë. Një filtër ekrani zakonisht ka një ndërprerës brenda aplikacionit të vet; një widget lundrues ka një kontroll mbylljeje; një modalitet ekrani i prodhuesit ka një çelës në cilësimet e ekranit.
Kthehuni te aplikacioni VPN pas kësaj dhe kërkoni përsëri miratimin, që dialogu të krijohet nga e para. Nëse trokitja tani funksionon, rregulloni sjelljen e përputhshmërisë të shtresës ose lëreni të fikur ndërsa lidheni, dhe mbani mbrojtjen e prekjes të aktivizuar.
Nëse nuk mund të thoni cila dritare është përgjegjëse, hiqni një nga një dhe riparaqitni dialogun e pëlqimit pas çdo ndryshimi. Shiriti i kontrollit të regjistruesit ose një shkurtore lundruese është zakonisht fajtori, dhe ai që hoqët menjëherë përpara se të funksiononte është përgjigjja.
Rikthe çdo gjë të palidhur që fikët gjatë rrugës. Një filtër ekrani ose një modalitet nate nuk është armiku; armiku është dritarja e caktuar që mbivendoset me dialogun.
Çfarë të mos bëni për të kaluar dialogun
Mos i jepni akses aksesueshmërie një aplikacioni të panjohur që të mund të shtypë butonin dhe mos instaloni një aplikacion ndihmës për këtë qëllim. Ato japin pikërisht aftësinë që mbrojtja ekziston për të mohuar, në një ekran që autorizon një VPN.
As mos e automatizoni dialogun me një mjet futjeje. Jep të njëjtin rezultat si një shtresë keqdashëse dhe nuk ju mëson asgjë për shkakun.
Në një pajisje të menaxhuar, një politikë që kufizon ndryshimet e VPN është vendim i administratorit. Një eksperiment me shtresë nuk është autorizim për ta anashkaluar. Po ashtu, një buton pëlqimi që nuk reagon nuk është arsye për të dobësuar verifikimin e certifikatës ose për të ndryshuar kredencialet e llogarisë: asnjëri cilësim nuk heq një pengesë lokale të prekjes.
Nëse ende dështon, raportoni sjelljen e saktë
Përshkruani dialogun, jo përfundimin: cili aplikacion kërkoi miratimin, nëse dialogu mbeti i hapur apo u mbyll, nëse edhe kërkesa të tjera të ndjeshme si paralajmërimet për burime të panjohura ose për aksesueshmëri injorojnë trokitjet, modeli i pajisjes dhe versioni i Android, dhe listat e shtresave dhe të aksesueshmërisë që regjistruat.
Pyetni pronarin e mbështetjes edhe një gjë tjetër ndërsa jeni atje: nëse politika e pajisjes kufizon fare ndryshimet e konfigurimit të VPN. Një bllokim i menaxhuar duket ndryshe nga një trokitje e injoruar, dhe të dish cilën po shikon kursen një raund të dytë.
Ky grup dallon një problem prekjeje të errësuar nga një pajisje futjeje e prishur, një dialog i ngrirë ose një bllokim politike. I tregon gjithashtu personit tjetër nëse duhet të shohë ekranin apo rrjetin.
Udhëzuesi i Android për tapjacking mbulon kushtet e dritareve të errësuara dhe API-të pas kësaj sjelljeje. Nëse dëshironi gjurmën e provave, kërkoni FLAG_WINDOW_IS_OBSCURED dhe FLAG_WINDOW_IS_PARTIALLY_OBSCURED në ngjarjen që nuk arriti kurrë te butoni. Dialogu që mbetet i hapur është ajo që duhet kapur, sepse tregon se trokitja u mbajt mbrapsht në vend që t'i dorëzohej një dritareje tjetër.