Android VPN растауын басуға жауап бермей ме? Алдымен қабаттасуды тексеріңіз
Басу қабылдамайтын растау батырмасы әдетте экрандағы жергілікті кедергі, сервер немесе тіркелгі ақауы емес. Қабаттасуды алып тастап, қорғанысты сақтаңыз.
VPN растау батырмасына басасыз, ал диалог жауап бермейді. Табиғи қорытынды – қолданба немесе сервер бүлінген, сондықтан адамдар құпиясөзді қалпына келтіреді, DNS ауыстырады немесе клиентті қайта орнатады. Әдетте бұлардың ешқайсысы ақауға қатыспайды, өйткені Android кедергі арқылы келген түртулерді тастайды, ал VPN растау экраны дәл осындай сезімтал келісім диалогы. Басу батырмаға ешқашан жетпейді.
Қорғаныс шын мәнінде нені қабылдамайды
Android сезімтал өзара әрекеттерді tapjacking-тен қорғайды: басқа терезе диалог үстінде отырып, басуды ұрлайды немесе оны екіұшты етеді. Көрініс View.setFilterTouchesWhenObscured арқылы қосылады, ал оқиға басқа терезе ішінара немесе толық жабатын деп белгіленгенде MotionEvent.FLAG_WINDOW_IS_OBSCURED -мен келеді. Сонда оқиға дұрыс емес жерге жеткізілмей, тасталады. Android 12 (API 31) дәл сол қорғанысты жүйелік келісім беттерінде сенімсіз түртулерді бұғаттаумен кеңейтті, сондықтан растау диалогы басқа қолданбалар әлі қабылдайтын қабаттасудан келген басуды қабылдамауы мүмкін.
Үш нәрсе үнемі кедергі жасайды: басқа қолданбалар үстінде көрсету рұқсаты бар қолданба, мазмұн салатын қолжетімділік қызметі және экран жазғыштың немесе сүзгі құралының қалқымалы виджеті. Кейбір өндіруші экран функциялары өз қабатын қосады, сондықтан бірдей Android нұсқасындағы екі телефонда бір диалог әртүрлі әрекет етуі мүмкін. Ішінара жабатын терезе FLAG_WINDOW_IS_PARTIALLY_OBSCURED орнатады, ал басу батырма оны көрмей тұрып тасталады. Бұл экранның қасиеті, желінің емес. Басу тасталған сәтте VPN серверіне ештеңе жіберілмеген, сондықтан сервер жағындағы ешбір өзгеріс нәтижеге әсер ете алмайды.
Өлі басуды сәтсіз қосылымнан ажыратыңыз
Айырмашылық – бүкіл диагностика және ол он секунд алады. Басу еленбесе және диалог дәл бұрынғыдай тұрса, кедергі жергілікті. Диалог жабылып, кейін қате шықса, келісім қабылданды және сіз қолданбаның өз оқиға ақпаратын қажет ететін басқа кезеңге өттіңіз.
Жергілікті оқуды сұраныс жіберген қолданбаның қосылымды тіпті талпынғанын тексеру арқылы растай аласыз. Келісім диалогы экранда тұрғанда қолтаңба талпынысын ешқашан тіркемейтін клиент желіге жетпеген.
adb shell cmd appops get com.example.vpn SYSTEM_ALERT_WINDOW
adb shell settings get secure enabled_accessibility_servicesҚабаттасу рұқсаты кімде екенін және қай қолжетімділік қызметтері қосулы екенін тізімдеп, жұмыс істеп тұрғандармен салыстырыңыз. Платформаның қорғанысын өзін өшірмеңіз; жасырын терезенің сіздің атыңыздан келісім диалогына жауап беруіне кедергі келтіретін дәл сол.
Кедергіні алып тастап, кәдімгі ағынды қайта көріңіз
Алдымен қай қолданба VPN растауын сұрағанын анықтаңыз, сонда қандай келісім беретініңізді білесіз. Содан кейін кешірек қажет болуы мүмкін кең рұқсатты қайтарып алмай, сол қабаттасуды өз параметрінен тоқтатыңыз. Экран сүзгісінде әдетте өз қолданбасында қосқыш болады; қалқымалы виджетте жабу басқаруы бар; өндірушінің экран режимінде экран параметрлерінде қосқыш бар.
Содан кейін VPN қолданбасына қайтып, растауды қайта сұраңыз, диалог жаңадан құрылсын. Басу енді жұмыс істесе, қабаттасу үйлесімділігін реттеңіз немесе қосылу кезінде оны өшірулі ұстаңыз, ал түрту қорғанысын қосулы қалдырыңыз.
Қай терезе кінәлі екенін анықтай алмасаңыз, оларды бір-бірлеп алып тастап, әр өзгерістен кейін келісім диалогын қайта көріңіз. Жазғыштың басқару жолағы немесе қалқымалы жарлық әдеттегі кінәлі, ал жұмыс істеуінен дәл бұрын алып тастағаныңыз – жауап.
Жолда өшірген қатысы жоқ нәрселердің бәрін қалпына келтіріңіз. Экран сүзгісі немесе түнгі режим жау емес; диалогпен қабаттасатын нақты терезе – жау.
Диалогтан өту үшін не істеуге болмайды
Белгісіз қолданбаға батырманы басу үшін қолжетімділік бермеңіз және ол үшін көмекші қолданба орнатпаңыз. Бұл қорғаныс тыйым салу үшін жаралған қабілетті VPN-ге рұқсат беретін экранда береді.
Диалогты енгізу құралымен автоматтандырмаңыз. Ол зиянды қабаттасумен бірдей нәтиже береді және себеп туралы ештеңе үйретпейді.
Басқарылатын құрылғыда VPN өзгерістерін шектейтін саясат – әкімшінің шешімі. Қабаттасу тәжірибесі оны айналып өтуге рұқсат емес. Сол сияқты, жауап бермейтін растау батырмасы сертификат тексеруін әлсіретуге немесе тіркелгі деректерін өзгертуге себеп емес: екі параметрдің ешқайсысы жергілікті түрту кедергісін жоймайды.
Әлі де болмаса, нақты әрекетті хабарлаңыз
Қорытындыны емес, диалогты сипаттаңыз: қай қолданба растау сұрады, диалог ашық қалды ма әлде жабылды ма, белгісіз дереккөздер немесе қолжетімділік ескертулері сияқты басқа сезімтал сұраныстар да басуды елемей ме, құрылғы моделі мен Android нұсқасы, және сіз жинаған қабаттасу мен қолжетімділік тізімдері.
Сол жерде қолдау иесінен тағы бір нәрсе сұраңыз: құрылғы саясаты VPN конфигурациясының өзгерістерін мүлдем шектей ме. Басқарылатын бұғаттау еленбеген басудан өзгеше көрінеді, және қайсысын көріп отырғаныңызды білу екінші айналымды үнемдейді.
Бұл жиынтық жабылған түрту мәселесін бүлінген енгізу құрылғысынан, қатып қалған диалогтан немесе саясат бұғаттауынан ажыратады. Ол келесі адамға экранға немесе желіге қарау керегін де айтады.
Android-тың tapjacking жөніндегі нұсқаулығы жабылған терезелер шарттарын және осы әрекеттің артындағы API-лерді қамтиды. Дәлел ізін қаласаңыз, батырмаға ешқашан жетпеген оқиғадан FLAG_WINDOW_IS_OBSCURED және FLAG_WINDOW_IS_PARTIALLY_OBSCURED іздеңіз. Ашық қалған диалог – тіркеуге тұрарлық нәрсе, өйткені ол басудың басқа терезеге берілмейін, ұсталып қалғанын көрсетеді.