Сегодня хочу рассказать одну замечательную историю. Нет, не так... одну "замечательную" историю. Речь пойдет про программы, использующие определенные возможности для доступа к данным, хранящимся в мобильном устройстве. И политику "корпорации добра" по отношению к таким программам. Все это основано на "реальных событиях". Итак, начнём.

Как я обычно начинаю практически любой свой пост? Ответ достаточно прост (если, конечно, вы читаете мой блог 😉) - с утверждения, что я использую self-hosted сервисы. Не будет исключением и этот раз. Да, я использую такие сервисы, и одним из основных является домашнее облако Nextcloud. Это достаточно мощное приложение само по себе, к тому же, оно обладает возможностью получать дополнительный функционал за счет вспомогательных приложений - для них создан даже целый магазин. Одна часть этих приложений разрабатывается той же командой, которая развивает основной сервер, другая - сторонними разработчиками.

Так как Nextcloud - сервер, то и большая часть дополнительных приложений являются "серверными" и предназначены для сохранения данных пользователей где-то там, в облаке, а в моем случае - на домашнем сервере. И наиболее продвинутая часть этих приложений предоставляет возможность взаимодействовать с собой не только через web интерфейс, но и через клиентские приложения, работающие, например, под Android.

Одно из таких приложений - Phone Sync. Основным его предназначением является, согласно официальному описанию, отображение в web интерфейсе SMS сообщений. Эти сообщения, в свою очередь, передаются на сервер при помощи мобильного приложения, работающего под управлением Android. Я начал использовать это приложение достаточно давно, причем, мне был интересен не столько сам процесс просмотра SMS сообщений при помощи web интерфейса, сколько получившийся в результате backup этих самых сообщений - благодаря передачи SMS на сервер.

Установил я это приложение из Google Play Маркет, о чем могут свидетельствовать следующие скриншоты (на экране вся информация сразу не помещается):

Начало
Окончание

И это несмотря на то, что сами разработчики анонсировали размещение приложения на F-Droid.

Что касается этого самого F-Droid. Я несколько раз устанавливал его, потом сносил. Все дело в том, что я довольно щепетильно отношусь к безопасности своего устройства. Да, я знаю, что F-Droid тщательно и ответственно относится к размещению ПО, которое проходит аудит исходного кода (размещаются приложения с открытым исходным кодом). Но я - разработчик, и представляю себе, что такое исходный код, как его можно написать, и что это за труд - анализировать чужой код. Да и на сайте самого F-Droid не зря красуется предупреждение:

И хотя мы всячески стараемся сделать все приложения из репозитория и их установку безопасными, тем не менее, устанавливая их, Вы действуете НА СВОЙ СТРАХ И РИСК. По мере возможностей приложения собранные из исходного кода, предварительно проверяются на наличие возможных проблем безопасности и конфиденциальности. Впрочем, эти проверки не исчерпывающи, а потому не дают гарантий.

В общем, отношения с F-Droid складывались, что называется, непросто. Однако, вернемся к приложению Phone Sync и его мобильному клиенту Nextcloud SMS.

Как я уже отмечал, пользуюсь этой "сладкой парочкой" я уже довольно давно. Не то, чтобы они работали совсем без огрехов, но, всё-таки, дело своё делали - у меня на сервере хранится backup SMS начиная с ноября 2017, а то и раньше.

Но, некоторое время назад, утром, мне на телефон приходит оповещение:

Оповещение об опасности использования приложения

Вот так вот, пользуешься программой, пользуешься, и тут - "вот тебе, бабушка, и Юрьев день". И главное, с момента последнего обновления прошёл уже почти год! Надо же, опомнились. Скорее всего, причиной послужили какие-то из разрешений этого приложения.

Начало списка разрешений
Окончание списка разрешений

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

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

На самом деле, это не первая программа, которая пострадала от требований Google. Я пользуюсь приложением Телеметрика, которое позволяет взаимодействовать с различными GSM устройствами при помощи всё тех же SMS. Раньше приложение запрашивала необходимый ей доступ, после чего с отправкой SMS не возникало никаких проблем. Сейчас же, при отправке из программы команды конкретному устройству, экран переключается на приложение Сообщения, в котором передаваемая команда выведена в строке ввода сообщения и для ее отправки надо явно нажать на пиктограмму отправки.

Жмём кнопку 'Да'
Дополнтельно жмём пиктограмму отправки

Более того, для возврата в первоначальное приложение приходится пользоваться стандартными средствами Android - никакого автоматического возврата не производится.

После отправки мы остаёмся в сообщениях

Ничего не скажешь, стало значительно удобней (это сарказм, если что). И да, если раньше отправленные/полученные SMS можно было посмотреть в журнале в самом приложении Телеметрика, то теперь там последняя запись датирована мартом 2019 года.

Больше никаких логов

Я понимаю, почему этот гигант (речь про Google), ужесточает правила, вводит новые ограничения и так далее и тому подобное. И негативный информационный фон от того, что в магазине найдены программы с какой-то не такой рекламой, или майнером, или другим зловредом - это лишь меньшее из зол. Хуже, если пойдут иски о возмещении ущерба. Все же знают байку про бабушку, котёнка и микроволновку, в инструкции которой НЕ было указания НЕ сушить в ней домашних животных? Да и пользователей, которые до сих пор с упорством, достойным лучшего применения, продолжают открывать программы, вложенные в почту, не смотря на различные предупреждения, меньше не становится. Но ведь так, в конце концов, можно прийти к тому, с чего начинал Apple - сторонним приложениям запрещено, практически, всё.

Вообще, это отличная иллюстрация того, что ради безопасности пользователей, их сильно урезают в правах. Но, если в реальной жизни такие попытки, предпринимаемые правительствами, хотя бы осуждаются, пусть и в отношении лишь определенных правительств (😉), то в виртуальной жизни все "прокатывает" практически без вопросов.

А еще, данная история укрепляет моё представление обо всех этих гигантах, как об очень жадных и сильно забюрократизированных сущностях (так, кстати, очень много граждан думают про свои государства). Жадность здесь фигурирует потому, что они гребут немалые деньги, в том числе, и с разработчиков (хотя эти жалкие 30% просто крохи, но ведь именно приложения вносят немалый вклад в популяризацию платформы, Windows Mobile тому свидетель), не удосуживаясь возвращать достаточное количество обратно для поддержания нормальной системы аудита и мониторинга. Откуда следует и бюрократизм - насоздавали формальных правил, автоматизировали проверку их соблюдения и на этом посчитали работу выполненной. Нет, я, конечно, представляю объёмы того информационного трэша, который вываливается на их голову, но путь его фильтрации, выбранный в конечном итоге, по сути, есть путь наименьшей вовлечённости. Быть может, это самый простой (правильный?) путь...

А теперь давайте глянем, к чему привела политика Google в этом конкретном, описываемом мною, случае. А привела она к тому, что у меня на мобильнике рядом со значком Google Play Маркет теперь красуется иконка F-Droid.

Теперь их у меня два - магазина приложений

То есть, как и в обычной жизни, попытка закрутить гайки привела лишь к тому, что пользователь перешёл на "новый" уровень, создав потенциально значительно большие угрозы безопасности, чем те, которые были (якобы) искоренены - ведь установка приложений из сторонних источников несёт в себе совершенно другие риски. Хотя, если так пойдет и дальше, то установка программ из сторонних магазинов приложений тоже падёт жертвой борьбы за безопасность пользователей.