Pull to refresh

Comments 66

UFO just landed and posted this here
Поставил OpenVPN, настроил на свой сервер, пользовался.
Но теперь озадачился — надо посмотреть сутки-двое куда обращается телефон с включенным OpenVPN.
у меня стоит фаерволл, который через ван работает. как проверить на чистоту?
а зачем ставить сторонний VPN клиент на android, есть в системе и так можно создать VPN подключение через стандартные настройки и сидеть через него?
Например затем, что андроид не умеет нативно в OpenVPN?
Ну и многим людям просе скачать приложушечку, которая позволит ходить на запрещенный сайт (к примеру), чем думать и искать VPN-сервер
«Приложушечка» от разработчиков OpenVPN меня вполне устраивает.
Ну во-первых, я говорил про встроенные средства андроида. OpenVPN надо же доставлять из маркета отдельно и как следствие появляется вопрос: а действительно ли она лучше остальных? Про нее в статье ничего не сказано прямо, но это еще не значит, что она не сливает все ваши данные китайским хакерам (я, конечно, надеюсь, что нет, но точно знать не могу).
А во вторых — приложушечка OpenVPN слишком сложна для среднестатистического пользователя, который хочет зайти на заблокированный порносайт. Это ведь надо найти где-то openvpn сервер (желательно бесплатный) или установить свой (а мы говорим о пользователе, а не IT-шнике), что опять же не бесплатно. Потом написать файл конфигурации для клиента.
А можно просто скачать приложушечку «VPN до всех порносайтов без регистрации и смс» и не думать. И среднестатистический пользователь, скорее всего, выберет второе.
а зачем ставить сторонний VPN
Проблема в статье не об этом. А о том, что простая игрушка с разрешением на VPN может открыть туннель, и весь трафик польётся через приложение.
Некоторые приложения используют эту функцию для обхода государственной цензуры, обеспечения анонимности — здесь VPN вполне уместен.
Всё же основное назначение VPN — создание сетевого соединения, защищённого от злоумышленников, а не обход цензуры или анонимность. Не забывайте это упоминать, а то чиновники скоро будут на Хабр ссылаться в качестве подтверждения того, что VPN — инструмент террористов. Они же считают, что законопослушным гражданам обходить цензуру не нужно, да.
какая то странная таблица по распределению сторонних следящих библиотек. В сумме 107% Premium это как? И еще Free 99%, а результирующая ALL 73%… а что с оставшимися 27% случилось?
>Всегда обращайте внимание на разрешения приложений, которые вы скачиваете
Обращаешь, но сейчас почти каждое приложение-фонарик просит разрешение на все. В противном случае отказывается работать
Такие «фонарики» удаляются и заменяются на нормальные программы.
Фанарик был для примера.
Настоящий пример — приложение банка. Просит все — от изменения хранилища, до отправки и изменения контактов. Естественно я приложением стараюсь не пользоваться, но когда уезжаешь на какую то неделю, и ноута с собой нет, то приходиться качать эту срань (пополнить мобильный счет и т.д.)
А если раз в эту лужу вступил, то потом уже можно не удалять…
UFO just landed and posted this here

Немного ниже уже описал. В теории есть, но мобильной версии сайта нет, грузятся тонны баннеров, скриптов и прочие фейерверки. Банк считает, что если есть приложение, то сайт с приставкой m.* не нужен. Такие дела

UFO just landed and posted this here

Тут готов поспорить. Лучше открыть удобный сайт, чем загромождать телефон третьим десятком приложений. С таким успехом любой сайт будет писать себе приложение, и тогда будет жестяная жесть.
Второй случай — невозможность зайти в гуглплей (Китай с его фаерволом)
P.S. очень рад, что комменты можно писать уже с мобильной версии

UFO just landed and posted this here
Вы предлагаете использовать полную версию сайта. В случае с хабром это еще терпимо, а когда эти сайты даже не каждый компьютер осилит открыть, но таким пользоваться на телефоне увольте…

Он предлагает делать сайты с адаптивным дизайном. Этот термин включает в себя возможность нормального использования сайта на телефоне.

UFO just landed and posted this here
Если уезжаешь туда, где интернет медленный, то все эти сайты банков, которые грузят сотни мегабайт React-Redux-SuperQuux фреймворков, css-фреймворков, и кастомных шрифтов, загрузить невозможно. Вся эта Web 3.0/React/Redux хрень не кэшируется, и совершенно не рассчитана на работу по соединениям медленнее 1 МБит.

Даже если чудом такой сайт удастся загрузить, то внутри постоянно что-то будет ломаться, потому что отправка какого-нибудь гигантского Redux дерева будет обламываться по таймауту, а разработчики этой ситуации не предусмотрели, т.к. тестируют все в 10Гбит локальной сети, где бандлы с React'ом даже при размере близком к гигабайтному, грузятся незаметно, и можно туда-сюда гонять XMLHttpRequest'ы с мегабайтными блобами. :(

На самом деле, это не проблема Web 3.0/React/Redux. Эта проблема растет из прямиком из Web 1.0 с серверной генерацией страниц, а Web 3.0 ее как раз бы мог решить… если бы люди не писали по-старому.


Ну нет в нормальном приложении необходимости отправлять куда-нибудь гигантское redux-дерево. Его отправляют потому что так проще, а не потому что так нужно.

Не уверен. Проблема в том, что все равно при первом открытии сайта, мобильный браузер дожен загрузить этот бандл, в котором находится React-Redux-и все-все-все остальное. Расскажу о своем опыте попытки открыть такой сайт на медленном соединении где-нибудь в глуши.

Открывается страница входа в банк. Грузится бандл размером в сотни мегабайт по Edge или чему-то такому. Грузится десятки минут. В итоге, либо пользователь не может понять, действительно происходит загрузка или все «зависло», либо срабатывает какой-нибудь таймаут на сервере, либо в браузере, либо в сетевом стеке. Долбаный гигантский бандл не загрузился.

Пользователь жмет Reload. Та же история повторяется сначала: гигантский файл начинает грузиться с самого начала, ни кэширование, ни продолжение загрузки обычно не работает.

Кроме этого еще грузится тонна CSS (ну ладно, они маленькие), и еще куча кастомных шрифтов (ну как же, без них ведь все будет некрасиво!)

Допустим, все это загрузилось спустя 1-2 часа отчаянных попыток. Вводим имя пользователя и пароль, открывается новая страница (у некоторых банков это именно отдельная новая страница), на которой надо ввести одноразовый код… Начинают загружаться то ли новые бандлы, то ли перезагружаться старые… Пока все это происходит, одноразовый код протухает.

Back to square one.

А самое главное, даже если все загрузилось, разработчики не тестируют сейчас работу приложений на медленных соединениях. Код всех современных сайтов оперирует предположениями типа того, что если мы выполнили
1) XMLHttpRequestA
2) XMLHttpRequestB

То они дадут результат именно в том порядке, в котором были вызваны. И не будет ошибок сети или таймаутов.

В итоге, на соединении типа Edge все эти предположения не выполняются, и сайт в лучшем случае работает очень странно. В худшем, им вообще пользоваться невозможно.

Как раз в Web 1.0 не было ни одной из этих проблем. Все кэшировалось, не было параллельных запросов в backround, и т.д. и т.п. Медленно, но все работало.

На порядок XMLHttpRequest никто никогда не закладывается, потому что они могут прийти в другом порядке даже на компьютере разработчика.


Куда хуже отсутствие обработки ошибок, когда обрыв запроса по тайм-ауту оставляет программу в таков состоянии, из которого нельзя сделать повторный запрос.


Что же до Web 1.0 — вы уже забыли про такую чудесную вещь как ASP.NET WebForms с его ViewState и одной формой на всю страницу? Когда на странице, допустим, таблица на мегабайт данных — а еще один мегабайт лежит в hidden-поле и отправляется на сервер при нажатии на любую кнопку? :)

Суть в том, что современными сайтами пользоваться невозможно на медленном соединении. Неважно, какие причины. Каждое открытие сайта требует загрузки сотен мегабайт данных. На соединении, где проблематично загрузить даже десятки. Я не вижу, где современный Javascript сделал проще жизнь пользователей или разработчиков.

Пользователям теперь нужен как минимум очень быстрый канал, быстрый компьютер (потому что все это работает медленно и пожирает большое количество ресурсов процессора и памяти). Ничто в современном web не кэшируется. Разве что может быть картинки. В глуши с медленным интернетом делать совершенно нечего. Там можно пользоваться лишь Web-1.0 сайтами. К счастью, таковых все еще много.

Разработчики должны разбираться в невообразимо быстро сменяющемся лабиринте фреймворков и версий. Angular — плохо, React хорошо. А теперь добавим к уравнению Angular 2. А теперь React + Redux. А теперь Vue. А вот вам ES6. Ой, через месяц он уже устарел. А мы пишем на TypeScript. А мы на CoffeeScript. А мы используем babel. А мы lebab. Все это производит впечатление какого-то сплошного непрерывного бега, когда едва ли не раз в месяц происходит радикальная смена всего инструментария. Какая-то невероятная фрагментация вызванная непонятно чем.

Про ASP помню. К счастью, он всегда был настолько мало распространен, что лично мне ни разу не приходилось сталкиваться. С этими сайтами сталкивался лишь несколько раз в жизни.
Суть в том, что современными сайтами пользоваться невозможно на медленном соединении. Неважно, какие причины.

Суть в том, что вы обвиняете конкретный стек технологий, в то время как проблема присуща любым сайтам, где доступность на телефонах не ставилась как задача разработчикам.


На старые сайты вы можете зайти не потому что они так хорошо сделаны — а потому что интернет на вашем телефоне быстрее, чем на компьютерах тогдашних разработчиков.

На самом деле, проблема просто в том, что пользователей и ситуаций, в которых надо открыть сайт, а интернет — медленный, очень мало. Люди привыкают и находят обходные пути, а банку или другой организации нет резона тратить ресурсы, чтобы угодить 5% пользователей.

Я, например, уже знаю, что за границей, или в дальней поездке на мото/авто пытаться открыть сайт банка не получится — был уже очень горький опыт, когда срочно надо было сделать перевод, и я промучился 1,5 часа, но так и не смог войти в свой банк. Поэтому планирую все так, чтобы не попасть больше в подобную ситуацию — заранее оплачиваю телефон перед поездкой, например.

Впрочем, я и приложениями банков пользуюсь — что толку что-то скрывать от них, банк и так обо мне почти все знает: мой адрес, телефон, доходы и расходы, где, когда и на что я трачу деньги. Ничего нового они обо мне не узнают.
Ну, знаете, с таким подходом можно привыкнуть к чему угодно, и даже приносить свой вазелин…
Ресурсы и время на написание стремного приложения банк выделяет регулярно, а вот сделать хоть намек на адекватный сайт для слабых каналов один раз — некогда, выходит
>заранее оплачиваю телефон перед поездкой, например
Во-первых речь не только о пополнении телефона, а во-вторых роуминг штука штука непредсказуемая, и деньги могут закончиться в любой момент, а забрасывать 100500 долларов на телефон «чтобы хватило» тоже не выход
Соглашусь с вами отчасти. Надо было в тот момент написать в поддержку банка…
Но всем не напишешь, сталкивался с подобными проблемами еще на нескольких сайтах.

Это вообще стало общей тенденцией, которая заметна при использовании мобильного интернета, так как он медленный и часто тарифицируется по трафику. Несмотря на то, что постоянно читаю статьи о том, как React и иже с ним упрощает всем жизнь, и все выигрывают от новых технологий client-side javascript, сайты становятся все раздутее, загружаются все медленнее, на мобильном интернете пользоваться ими становится все сложнее, и счета за трафик растут.
Такое приложение сразу нужно отправлять в мусор без тени сомнений (если только его установка не является вопросом жизни и смерти, причем именно сию минуту).
Даже если просит — во многих прошивках есть инструменты индивидуально блокирующие доступ куда не надо. И даже больше — подсовывающие пустой список контактов, вместо настоящего — что бы прога не жаловалась
Не факт, что разработчики настроек приватности предусмотрели рубильник на разрешение vpn (ведь на каждый случай надо отдельно писать код-заглушку). Многие разрешения неотнимаемые (типа доступа в sd-карте).
Заглушки дают на всякие списки и аккаунты, а доступ в инет просто отрубается фаерволлом и там уже нет разницы, прямо прога ходит в инет или через тунннели.
Я встречал в прошивках настройки приватности, но без рубильника на инет. Для инета надо было ставить сторонний firewall. Просто уточняю ваш коммент насчёт встроенных инструментов.
Встроенные инструменты зависят от системы, в MIUI и фаер и менеджер разрешений — штатные. Рекомендую.
Вот только что-то фаервол у меня их не работает. Запретил фаерфоксу выходить в Интернет, а он все равно работает.
Только что проверил — работает железно. Правда мобильным фоксом не пользуюсь, у меня предпоследняя опера — инет фаером отрубился намертво.
Такие требования есть у довольно нужных приложений. Выше привел пример с банком

Посмотрите тот же вотс ап — там ужас… Хотя, казалось бы, обычный мессенджер

ES проводник — #Полные разрешения ко всем функциям устройства и хранения
ES — это же файловый менеджер, ему по должности положено иметь доступ к даным. Ватсап просит контакты, тоже логично, гуглокарты просят доступ к камере, с которым регулярно их обламываю. Менеджер пермишенов — сделает вашу жизнь спокойнее
ES — к данным да, но там отдельным пунктом он просит разрешение полностью на все
Вотс ап — просит запись аудио, к примеру, но использует ли он его только на отправку голосовых сообщений вопрос риторический. На счет изменения контактов спорный пункт. Прочитать контакты ладно, но изменять их ему зачем?

Менеджер может и решение, но сам то он просит не такой же список полномочий?
Или доверять менеджеру пермишенов, или не доверять ничему и компилировать Андроид из исходников, которые перед этим самостоятельно проверять. Я знаю, что Андроид через гугловые сервисы сливает много инфы американфам, Сяоми много чего сливает китайцам — и пускай. Мне главное, что бы оно по минимуму стучало нашим госслужбам. Не потому, что я занимаюсь чем-то противозаконным — а просто на всякий случай, аллергия у меня.
Ладно, дадим менеджеру доверие, но при этом клиентское приложение банка скажет — извини, я не буду работать. Придется выключать, и соглашаться на адские условия этого приложения, иначе доступа к счетам не получить…

У меня тоже аллергия, поэтому и согласен. Но кто знает чем может закончиться слив инфы американцам… Завтра подпишут кибер-соглашение, и будет вся жизнь на виду, даже если ничего плохого и не делаешь
Кака вариант — программа подсовывающая фейковые данные, потому что у меня банковская прога тоже хочет управлять вызовами. Еще можно скачать программу, которая позволяет управлять не просто разрешениями, а отдельными сервисами, это еще более глубоко и параноидально.
Ну вот за одной программой идет другая, и получается что мы ставим «включаем тройник в тройник» и городим огород. Нужно комплексное решение, а еще лучше — встроенное в андроид, а так это пускать другое зло вместо этого. При том что уверенности какое из них больше нет
Тогда только ноут с линуксом и нокия 3310 в качестве звонилки. Хочется пользоваться современными сервисами — делись информацией.
Что и требовалось доказать. В первом комменте я примерно на то и намекал, что смотри на разрешения, не смотри, а сути это не меняет…
Ну, моя паранойя не настолько сильна :)

Это приходит со временем :)

Хочется пользоваться современными сервисами — делись информацией.
А вот это надо менять!
Комплексное решение:
В ios ничего не надо разрешать при установке, все запрещено
При первом обращении к камере (чтобы считать номер карты например) или контактам спрашивается разрешение и можно отказаться, ничего не ломается от отказа, базовый функционал остается доступен

Была информация что в какой то версии андроида что-то подобное появилось
появилось, только приложения от этого лучше работать не начали. Самое милое — запрос разрешений в цикле.
По-хорошему, это лечится жалобой в стор и это приложение банят до исправления проблемы.
Новая система запроса полномочий не работает со старым софтом. Это значит, что если приложение не было собрано для Android 6.0 и выше (targetSdkVersion=23), то оно вообще не будет запрашивать полномочия у пользователя для получения доступа к нужным функциям. То есть все будет ровно так, как и было до версии 6.0. А самое главное, что возможность собрать приложение с targetSdkVersion ниже 23 никуда не делась (и не денется в ближайшие годы), любой желающий может скачать самую свежую Android Studio и собрать с ее помощью приложение для Android 5.1, которое будет прекрасно работать в Android 6/7 и не требовать от пользователя подтвердить свои полномочия.
источник
Была статья на эту тему, где бывший разработчик FB настоятельно советовал ходить в FB через браузер (если уж не получается отказаться от него совсем). Браузер дает хоть какую-то защиту. С банками аналогично.
Ну и, конечно, менеджер прав, в сегодняшнем мире штука совершенно необходимая.

И кстати про WhatsApp — когда-то в нем была возможность (я сам не видел, но читал в древних летописях) внести контакт вручную, не давая доступа ко всей записной книжке скопом. Потом выпилили. Разумеется, по многочисленным просьбам.
А в Signal такая возможность есть.
НУ с ФБ проще — есть нормальная мобильная версия сайта (скрипты тоже желательно отключать в браузере), и я как раз с приложением и не связываюсь. В случае с банком все намного печальнее. Только залогиниваться можно минут 15, с огромным расходом трафика, а потом еще пытаться делать какие то действия в ПКшной версии сайта. А траффик при выезде куда то совсем не бесплатный…
Костыльно через посылку контакта из другого аккаунта можно добавить не давая доступ к книжке, только так и спасаюсь. Телеграм кстати, несмотря на запрет доступа, книжку как-то смог высосать всё равно.
Вот как раз таки WhatsApp, к его чести, у меня работает с зарезанными разрешениями на доступ к контактам и микрофону. Да, я не могу инициировать переписку с теми кого у меня в воцапе нет, и наговаривать в микрофон, но это вполне подходит к моему сценарию его использования. Значительная часть приложений обнаружив что им недоложили пермишенов говрят ахтунг я не буду работать. Самое смешное — часть из них системные (предустановленные на телефон).
«Всегда обращайте внимание на разрешения приложений, которые вы скачиваете, — говорит профессор Дали Каафар.
Но этого недостаточно. Надо еще понимать, что то или иное разрешение означает. Например, «безобидное» «Данные о Wi-Fi-подключении». Позволяет идентифицировать вас по MAC адресу. Заодно узнать MAC адреса других устройств в локальной сети. Ну и так далее. Про другие, более «страшные» разрешения вы и так знаете.
Я до сих пор толком не понимаю, что означает «Поиск аккаунтов на устройстве».
В двух словах — в андроиде есть хранилище аккаунтов. По хорошему приложение должно хранить Oauth ключ там, а не в настройках. Этот список виден в настройках телефона. Плюс, есть приложения, которые сами ничего не хранят, но, например, привязываются к аккаунтам гугла. И для всего этого нужно это разрешение.
В двух словах — я это примерно так и понимал. Но это очень поверхностно. Если попытаться подумать более предметно — уйма вопросов.

Например, такой туповатый вопрос: если у меня на телефоне стоит почтовый клиент (гугл, яндекс, мейл.ру, что угодно) с залогиненной почтой, то может ли стороннее приложение, которому разрешено читать аккаунты, прочитать почту? Или пусть даже не саму почту, то хотя бы имена почтовых ящиков?
По поводу ключей доступа — нет. Пока приложения подписаны разными ключами, получить приватную информацию от другого приложения нельзя.
По поводу других данных, например, настроек или файлов — если телефон не рутован и данные явно не указаны, как публичные, тоже нет.
UFO just landed and posted this here
С пояснениями для чего конкретно те или иные разрешения. От части функционала я бы отказался самостоятельно.
Sign up to leave a comment.

Articles