Об многочисленности VPN-приложений, или бесплатный сыр в мышеловке.

Как я уже упоминал в прошлом своем посту, я занимаюсь реверс-инжинирингом приложений на платформу Android.

Сегодня я хочу поговорить о массовом распространении приложений для обхода блокировки сайтов (и проч.) - клиентах vpn-туннелей, или попросту VPN-приложениях.

В связи с блокировкой некоторых сайтов в разных странах (опустим политические и финансово-правовые аспекты этих блокировок) в магазине Google Play началось "наступление" бесплатных и не очень приложений для обхода этих самых блокировок. Принцип обхода я не буду описывать, это легко "гуглится" в интернете. Сейчас я хочу поговорить о бесплатном сыре в мышеловке.

Из самых известных приложений выделяются только два самых-самых: SurfEasy VPN и OperaVPN. Не для кого не секрет, что бесплатные приложения так или иначе должны "отрабатывать" свой хлеб побочными функциями, выполняя их скрыто или открыто для пользователя. В 99% случаев эти функции выполняет реклама и аналитика, собираемая и передаваемая на удаленные сервера для якобы отчета о правильности функционирования приложения, отчета о всевозможных багах и прочем. Реклама же призвана "оплачивать" бесплатную работу приложения для поддержки разработчиков оного.

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

Например: OperaVPN.

Приложение построено на основе движка SurfEasy VPN, однако, в отличие от оригинала имеет полностью бесплатный вариант распространения и автоматически продлевает т.н. премиум-подписку (безлимитный трафик), что настраивает крайне положительно пользователя по отношению к разработчику и самому сабжу. Одно огромное "но": OperaVPN содержит в своем коде сервисы агрессивной рекламы, которая работает в фоне и сильно загрязняет трафик через VPN-туннель. Кроме того, приложение имеет в коде микро-сервисы Google, которые собирают аналитические данные и отсылает их на серваки Гугла для анализа и предложения контекстной рекламы Google Ads. Кроме того, есть отдельный сервис аналитики Segment, который занимается тем же, но отправляет данные уже на другие сервера. В результате мы имеем большое потребление памяти ОЗУ приложением, влияние на заряд аккумулятора и лишний трафик, мусором льющийся по vpn-соединению.

Не так давно на сайте 4PDA в ленте новостей была реклама приложения VPN Unblocker FREE Unlimited (GooglePlay) которое также предоставляло услуги бесплатного vpn-соединения, гарантируя сохранность данных и анонимность в интернете.

Я решил покопаться в потр@шках приложения и посмотреть, можно ли сделать мод на него, аналогичный тому, что я сделал с приложением OperaVPN.

Разобрав приложение с помощью BAT by Bursoft (за тулзу автору огромный респект), и зайдя в код java я ахуел. Я не думал, что в отечественном приложении (а приложение - плод труда харьковской команды ArtJoker) будет настолько много говна мусорного кода, что я не то, что не захочу делать мод на него, а я бы крайне не рекомендовал даже его устанавливать на свое Андроид устройство!

Вот список того, что было обнаружено внутри VPN Unblocker FREE Unlimited:

-реклама adcolony/jirbo ads

-реклама  amazon ads

-реклама applovin native ads

-реклама appodeal ads

-реклама appsflyer ads

-аналитика chartboost analytics

-реклама cmcm ads

-реклама facebok ads

-реклама flurry ads

-реклама google ads

-аналитика google analytics

-аналитика/метрика google measurement

-реклама inmobi ads

-аналитика moat analytics

-реклама mopub ads

-реклама my.target ads

-реклама unity3d ads

-аналитика/метрика yandex metrica

-реклама yandex ads

-аналитика io.fabric analytics

-реклама org.nexage ads

-встроенный сервис mindpipe для отправки логов logcat на удаленный сервер

-встроенный сервис логгирования avocarrot (собирание данных из logcat)

-реклама supersonic ads

-реклама startup ads

-аналитика tapjoy moat analytics

-реклама tapjoy ads

-реклама vungle ads

-реклама integral ads

-реклама io.presage ads


Красным я отметил "мусорный код" внутри приложения (т.е. он вообще не нужен в приложении vpn-туннеля):

Об многочисленности VPN-приложений, или бесплатный сыр в мышеловке. Реверс-инжиниринг, Приложения на смартфон, Длиннопост, VPN, Моды, Шапочка из фольги
Об многочисленности VPN-приложений, или бесплатный сыр в мышеловке. Реверс-инжиниринг, Приложения на смартфон, Длиннопост, VPN, Моды, Шапочка из фольги
Об многочисленности VPN-приложений, или бесплатный сыр в мышеловке. Реверс-инжиниринг, Приложения на смартфон, Длиннопост, VPN, Моды, Шапочка из фольги

Теперь по поводу самой работы приложения. Сравним его работу с OperaVPN.

Запустим по очереди каждое приложение и проверим IP устройства используя любой сайт в интернете для проверки IP.

Т.к. я сейчас нахожусь в отпуске в Украине, будем сравнивать и по провайдеру.

Вот что выдал нам сайт проверки IP при работе VPN Unblocker FREE Unlimited:

Об многочисленности VPN-приложений, или бесплатный сыр в мышеловке. Реверс-инжиниринг, Приложения на смартфон, Длиннопост, VPN, Моды, Шапочка из фольги

А вот, что выдал нам тот же сайт при работе OperaVPN:

Об многочисленности VPN-приложений, или бесплатный сыр в мышеловке. Реверс-инжиниринг, Приложения на смартфон, Длиннопост, VPN, Моды, Шапочка из фольги

Выводы каждый для себя сделаем сам.

И напоследок, товарищи-разработчики VPN Unblocker FREE Unlimited предлагают КУПИТЬ у них версию приложения без рекламы (т.е. отключить ее при работе приложения) за сущий пустяк - 800 гривень (30$) за год (12 месяцев).

Об многочисленности VPN-приложений, или бесплатный сыр в мышеловке. Реверс-инжиниринг, Приложения на смартфон, Длиннопост, VPN, Моды, Шапочка из фольги

Ребята, вы с дуба на кактус не упали ума не сошли? Есть тот же OperaVPN, при чем абсолютно бесплатно, с рекламой меньшей в разы, чем у вас!

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


Всего хорошего, с уважением Андрей Aeron Li