Мой баг дня (записки тестировщика)
Да что вы знаете о безопасности?! Гугл раскатил обновление для Андроид Пэй. Теперь вам не нужно разлочивать устройство перед прикладыванием телефона к терминалу. Достаточно, чтобы экран был включен. И здесь совершенно точно речи о том, что телефон просто…
В Твиттере мне сказали, что это было давно уже, на самом деле.
Решил проверить, на какую сумму действует такой подход. Как раз закончил ремонт в квартире и покупаю всякое. Так вот при покупке люстры за 3500 Google Pay потребовал подтвердить, что это я — показал запрос пароля (хотя и принял просто отпечаток в итоге).
Видимо ограничение у такой операции такое же, как и оплата без PIN кода по обычной карте — у кого 1000 рублей, у кого 1500 рублей.
В общем, это поведение дублирует обычное поведение PayPass/PayWave.
К слову, если вдруг кто не знал. Даже если у вас чиповая карта (а у кого она не такая?), магазин вполне может провести операцию и без PIN кода, если у карты выставлен приоритет подписи. Если вы где-то с таким столкнулись — купили что-то тысячи на 3, а пин не потребовался, то позвоните в банк и попросите сменить приоритет на пиновый. Ну или просто так позвоните и спросите, приоритет чего именно у вас.
Решил проверить, на какую сумму действует такой подход. Как раз закончил ремонт в квартире и покупаю всякое. Так вот при покупке люстры за 3500 Google Pay потребовал подтвердить, что это я — показал запрос пароля (хотя и принял просто отпечаток в итоге).
Видимо ограничение у такой операции такое же, как и оплата без PIN кода по обычной карте — у кого 1000 рублей, у кого 1500 рублей.
В общем, это поведение дублирует обычное поведение PayPass/PayWave.
К слову, если вдруг кто не знал. Даже если у вас чиповая карта (а у кого она не такая?), магазин вполне может провести операцию и без PIN кода, если у карты выставлен приоритет подписи. Если вы где-то с таким столкнулись — купили что-то тысячи на 3, а пин не потребовался, то позвоните в банк и попросите сменить приоритет на пиновый. Ну или просто так позвоните и спросите, приоритет чего именно у вас.
Как выглядят устройства, когда на них бесконечно гоняют тесты
Знаете, как НЕ нужно писать документацию? Вот так, как делает Google: https://developer.android.com/preview/privacy/data-identifiers#randomized-mac-addresses
Попробуйте понять, рандомизируется мак адрес самого МУ (мобильное устройство) с точки зрения приложения, которое его спрашивает или же с точки зрения сетевого устройства, к которому это МУ подключается? Или же рандомизируется мак адрес сетевого устройства с точки зрения приложения, которое запрашивает мак адрес сетевого устройства конкретного сетевого подключения?
Вот как понять? Кроме как взять и проверить.
Попробуйте понять, рандомизируется мак адрес самого МУ (мобильное устройство) с точки зрения приложения, которое его спрашивает или же с точки зрения сетевого устройства, к которому это МУ подключается? Или же рандомизируется мак адрес сетевого устройства с точки зрения приложения, которое запрашивает мак адрес сетевого устройства конкретного сетевого подключения?
Вот как понять? Кроме как взять и проверить.
Одно из изменений в Android Q — потенциальный запрет создания активити для фоновых приложений. То есть нельзя будет из ниоткуда показать свой экран. Можно будет показать его если:
— Это другой экран вашего приложения, а оно как раз на переднем плане
— Этот экран поднялся как реакция на тап по уведомлению от приложения
— Этот экран поднят другим приложением, которое само по себе находится на переднем плане. Т. е. если вы предоставляете графический редактор, а пользоавтель из фотовьювера вызвал редактирование фотографии, то всё в порядке
— Этот экан поднят в ответ на SECRET_CODE_ACTION
Так вот. Google Pay и даже Telephone сейчас попали в расстрельный список. Потому что они показывают свои экраны внезапно. Первый — при оплате покупок, второй — при входящем звонке.
— Это другой экран вашего приложения, а оно как раз на переднем плане
— Этот экран поднялся как реакция на тап по уведомлению от приложения
— Этот экран поднят другим приложением, которое само по себе находится на переднем плане. Т. е. если вы предоставляете графический редактор, а пользоавтель из фотовьювера вызвал редактирование фотографии, то всё в порядке
— Этот экан поднят в ответ на SECRET_CODE_ACTION
Так вот. Google Pay и даже Telephone сейчас попали в расстрельный список. Потому что они показывают свои экраны внезапно. Первый — при оплате покупок, второй — при входящем звонке.
Про SECRET_CODE_ACTION если кто не знает. Это такая штука, которая присылается вашему приложению, когда пользователь ввёл определённую последовательность на клавитуре телефона. Видели всякие инженерные меню, которые открываются при вводе каких-нибудь *#INFO#*? Вот это оно и есть.
Коллеги, не нужно на бете использовать маты. Когда-нибудь эта бета попадёт в релиз. Вот только что я обнаружил, что если заходить на сайт магазина винлаб через TOR, то в их поисковой строке будет фраза "Хуй знает, что за шифрование".
Совершенно точно это не мой поиск. Это отладочная строка, которая исчезает через пару мгновений.
И не исключаю, что это не разработчики сайта так сделали, а какая-нибудь зависимость.
Совершенно точно это не мой поиск. Это отладочная строка, которая исчезает через пару мгновений.
И не исключаю, что это не разработчики сайта так сделали, а какая-нибудь зависимость.
На Android Q в будущем будет включена песочница для /sdcard/ (распаянной и сменных). Я посмотрел на поведение своего приложения при принудительном включении песочницы. Итак:
— Пермишены READ_EXTERNAL_STORAGE и WRITE_EXTERNAL_STORAGE (они, кстати, теперь депрекейтед) становятся несуществующими. В смысле будто они вообще не объявлены в манифесте. Вы не увидите их в свойствах установленного приложения и не сможете их выдать через adb install -g file.apk
— Приложение сохраняет доступ к /sdcard/ и даже может гадить на неё. Но при этом не видит на ней ничего, кроме своего собственного
— Утилита run-as (запускает шелл от указанного имени пакета) стала вашим врагом. Она отображает то, чего приложение не видит. То есть через неё я вижу всю файловую систему, как и раньше, чего быть не должно. Кроме того, файл, сохранённый приложением через run-as остаётся и после удаления приложения, что тоже не честно. Не знаю, чей это баг — run-as или Beta 1 я не знаю. Но хочется, чтобы ошибку исправили
— Пермишены READ_EXTERNAL_STORAGE и WRITE_EXTERNAL_STORAGE (они, кстати, теперь депрекейтед) становятся несуществующими. В смысле будто они вообще не объявлены в манифесте. Вы не увидите их в свойствах установленного приложения и не сможете их выдать через adb install -g file.apk
— Приложение сохраняет доступ к /sdcard/ и даже может гадить на неё. Но при этом не видит на ней ничего, кроме своего собственного
— Утилита run-as (запускает шелл от указанного имени пакета) стала вашим врагом. Она отображает то, чего приложение не видит. То есть через неё я вижу всю файловую систему, как и раньше, чего быть не должно. Кроме того, файл, сохранённый приложением через run-as остаётся и после удаления приложения, что тоже не честно. Не знаю, чей это баг — run-as или Beta 1 я не знаю. Но хочется, чтобы ошибку исправили
compileSdkVersion 'android-Q'
buildToolsVersion "29.0.0 rc1"
defaultConfig {
minSdkVersion 16
targetSdkVersion 'Q'
Будьте внимательны. При таком подходе вы не сможете установить приложение на версии SDK ниже этого же Q. Из-за баги не очень понятно где именно, если в таргете стоит не цифра, а буква, то минСдк становится равен таргетСдк.
При этом если в таргет поставить 29, то всё будет в порядке. Кроме того, что Андрои Кью Бета 1 не понимает 29 (наверное, я не проверял) и не будет делать специфичных ограничений (наверное, по крайней мере так следует из документации)
buildToolsVersion "29.0.0 rc1"
defaultConfig {
minSdkVersion 16
targetSdkVersion 'Q'
Будьте внимательны. При таком подходе вы не сможете установить приложение на версии SDK ниже этого же Q. Из-за баги не очень понятно где именно, если в таргете стоит не цифра, а буква, то минСдк становится равен таргетСдк.
При этом если в таргет поставить 29, то всё будет в порядке. Кроме того, что Андрои Кью Бета 1 не понимает 29 (наверное, я не проверял) и не будет делать специфичных ограничений (наверное, по крайней мере так следует из документации)
https://www.kv.by/post/1056820-kak-spravitsya-s-neobychnym-virusom-na-android
Как я от нечего делать за 2 минуты остановил(?) распространение рекламной херни.
Пришёл на форум человек, описал проблему, с которой боролись на Реддите, боролись фирмы конкурентов и не могли справиться. Я за пару минут накидал несколько строчек кода и, ни на что реально не надеясь, выложил приложение.
Этот опыт был забавным.
Как я от нечего делать за 2 минуты остановил(?) распространение рекламной херни.
Пришёл на форум человек, описал проблему, с которой боролись на Реддите, боролись фирмы конкурентов и не могли справиться. Я за пару минут накидал несколько строчек кода и, ни на что реально не надеясь, выложил приложение.
Этот опыт был забавным.
KV.by
Как справиться с необычным вирусом на Android
Android – сама по себе неплохая операционная система. Она занимает более 80% рынка и является лидером в сегменте мобильных ОС. Удобная, кастомизируемая, с множеством различных функций и неплохим уровнем безопасности... Но иногда недобросовестные разработчики…
Возможно звучит смешно, но я научился проходить Google капчу. Ту самую, со светофорами, знаками, мостами. И ту, где разные картинки и ту, где одна большая картинка поделена на секции.
Жаль, не догадался раньше снимать скриншоты, чтобы показать вам, но для начала пойдёт.
Как сделаны эти скриншоты. Сначала я выделял ответы, которые считаю правильными, затем снимал скриншот, затем проверял результат. И всегда проходил с первого раза.
Как вообще нужно проходить гугл капчу. Нужно "мыслить" как нейронка. Раньше я думал, что они понимают правильные ответы по статистике других людей (возомжно так раньше и было), но сейчас все картинки распознаёт нейронка и вешает теги, что она здесь видит. Гугл считает правильным ответом только те теги, где оценка точности очень высока. Соотвественно вам тоже нужно отмечать только то, что 100% понятно даже скрипту и НЕ нужно отмечать те элементы, в которых вы сомневаетесь.
А теперь слайды
Жаль, не догадался раньше снимать скриншоты, чтобы показать вам, но для начала пойдёт.
Как сделаны эти скриншоты. Сначала я выделял ответы, которые считаю правильными, затем снимал скриншот, затем проверял результат. И всегда проходил с первого раза.
Как вообще нужно проходить гугл капчу. Нужно "мыслить" как нейронка. Раньше я думал, что они понимают правильные ответы по статистике других людей (возомжно так раньше и было), но сейчас все картинки распознаёт нейронка и вешает теги, что она здесь видит. Гугл считает правильным ответом только те теги, где оценка точности очень высока. Соотвественно вам тоже нужно отмечать только то, что 100% понятно даже скрипту и НЕ нужно отмечать те элементы, в которых вы сомневаетесь.
А теперь слайды