Всички знаят какви приложения сте си инсталирали във вашия телефон
Оригиналът е на Pea Bee
Допреди няколко години всяко приложение, конфигурирано на Android устройство, можеше да вижда всички други приложения без каквото и да било позволение.
През 2022 година, с излизането на Android 11, Гугъл отстрани този достъп за разработчиците на приложения. Според новата политика за видимост на пакетите приложенията би трябвало да виждат другите приложения единствено в случай че тези приложения са нужни за главната им функционалност. Освен това разработчиците би трябвало категорично да заявяват тези приложения в наложителния конфигурационен файл AndroidManifest.xml за всички Android приложения.
В рискови случаи, като да вземем за пример за файлови мениджъри, браузъри и антивирусни стратегии, Гугъл дава изключение под формата на разрешението QUERY_ALL_PACKAGES, което разрешава да се виждат всички конфигурирани приложения.
Не употребявам Android на главния си телефон, само че имам авариен и ми стана доста любопитно кои приложения от самостоятелни компании съдържат инспекции на другите приложения, които съм конфигурирал.
Изтеглих няколко десетки приложения, които просто ми хрумнаха, и започнах да преглеждам техните манифестни файлове. Със сигурност те ще почитат персоналните ми данни и ще изискват единствено приложенията, които са нужни за главната им функционалност, нали?
Струва си да се означи, че приложенията може да имат изцяло основателни аргументи да ревизират другите приложения, конфигурирани в телефона ви. Така да вземем за пример обещано приложение може да ревизира за конфигурирани приложения на UPI [забележка: Unified Payments Interface е индийската система и протокол за незабавни плащания], с цел да покаже съответните способи за заплащане. Повечето от манифестите, които изследвах, съдържаха инспекции за тези приложения. Някои от тях търсеха и клонирани приложения или приложения с голям брой сметки, евентуално за сигурност и разкриване на измами. Всичко това е изцяло задоволително.
Но някои индийски компании са отишли доста, доста по-далеч в тези инспекции. Нека стартираме със Swiggy: нейният манифест файл изброява цели 154 приложения, което ѝ разрешава да търси и желае тези приложения в телефона ми. Ето го и цялостният лист:
Дори не знам от кое място да стартира да проучвам тази полуда. Как информацията за това дали имам конфигурирано приложение за Xbox или Playstation на моя телефон е обвързвана с главната функционалност на Swiggy? Как знанието дали имам конфигурирано Naukri (приложение за търсене на работа) или Upstox (приложение за брокерски услуги) оказва помощ за доставката на храна?
В този лист има необятен набор от софтуерни категории и от него излиза наяве, че Swiggy съвсем несъмнено събира данни за конфигурираните приложения, с цел да профилира потребителите и да построи поведенчески профил на клиентите. Струва ми се, че това нарушава политиката на Play Store, която смята листата с конфигурирани приложения за персонални и чувствителни данни на потребителя.
Това ми припомня за една презентация на Blume Ventures. В нея има забавен слайд с приложения, употребявани в другите „ Индии “ [Презентацията разделя пазара на цялата страна на три пласта съгласно равнището на приходите:]
Swiggy се обръща към множеството от тези и други приложения. Тя освен знае към коя „ Индия “ принадлежи потребителят, само че може да дефинира и къде се намира той.
Нека в този момент поговорим за друго приложение, това е нормалният обвинен, ненадминатият първенец на тъмните шаблони за планиране – Zepto. В неговия манифест се съдържа лист от 165 приложения, които се ревизират в устройството.
В листата са включени съвсем всички известни приложения от всички категории – от Netflix до Bumble и Binance. Неотдавна се появиха известия, че Zepto демонстрира разнообразни цени на потребителите на iOS и Android. С тези данни приложението може да демонстрира и разнообразни цени за другите телефони с Android, нещо, което някои консуматори към този момент следят.
Въпреки че Swiggy и Zepto са длъжни да разгласят тези приложения в манифестния си файл, няма метод ние като консуматори да забележим този лист, като изтеглим приложението от Play Store.
Анализирах и приложенията Swiggy и Zepto за техните куриери. Списъкът с желаните приложения е друг и при двете. И в двете има инспекции за това за какви други компании работи доставчикът. Ето листата на Zepto:
Но Swiggy отива още по-далеч – тя ревизира и приложенията за потребителски заеми, за персонални финанси и даже следи приложения като Ludo King и Carrom Pool на телефоните на куриерите [забележка: това са приложения за онлайн версиите на известните настолни игри ludo и carrom].
Дори не можем да играем Ludo на мира, без работодателите ни да ни шпионират! Swiggy би трябвало да следи свободното време на куриерите? Възмутително е, че Swiggy счита, че е трябвало да включи тези нелепи инспекции на приложенията в телефоните на куриерите.
Като приказваме за индийските приложения за потребителски заеми – техните грабителски практики са в детайли документирани. Преди няколко години бяха подхванати строги ограничения, които доведоха до премахването на хиляди такива приложения от Play Store. Разгледах част от тях, които не престават да съществуват.
В класацията на Play Store приложението Kreditbee е преди всичко в листата на приложенията за потребителски заеми с 50 милиона изтегляния. А знаете ли какъв брой други приложения се ревизират от него? 860!!! Извинявам се, може да се наложи да присвиете очи, с цел да разгледате целия лист.
Разгледах този лист единствено в резюме, има прекалено много приложения. Надявам се, че някой, който чете това, ще направи обстоен разбор. Вероятно поради осведомителния балон, в който пребивавам, не съм чувал за множеството от тези приложения, макар че доста от тях имат десетки милиони изтегляния.
Освен нормалните категории, забелязах, че се ревизират и приложения като Tamil Calendar, Odia Calendar, Qibla Direction Finder, религиозни и астрологични приложения. Разработчиците знаят тъкмо какво вършат.
В листата е „ Jodii for Diploma, +2.10 below “, приложение за запознанства за хора, които не са приключили гимназия. То има над 10 милиона изтегляния.
Там можете да намерите и „ गाय भैंस खरीदें बेचें Animall “ (пазар за купуване/продаване на крави?) също с над 10 милиона изтегляния.
Този лист с приложения дава визия за метода, по който по-голямата част от Индия употребява телефоните, за тяхното всекидневие, привички и цели.
Друго водещо приложение за потребителски заеми, Moneyview, с над 50 милиона изтегляния, включва инспекции за цели 944 приложения – най-дългият лист от всички приложения, които съм проучвал. Няма да го включвам в тази обява, можете да го видите в цялостен тип настрана.
Това, което ме изненада, е, че KreditBee и Moneyview минават сполучливо инспекцията на Play Store. Политиката на Play Store категорично не разрешава на приложенията за потребителски заеми да употребяват разрешението QUERY_ALL_PACKAGES. Но приложенията заобикалят това ограничаване, като ръчно изброяват всяко приложение, което желаят да наблюдават, в манифестния файл.
Открих единствено един манифестен файл, съдържащ разрешението QUERY_ALL_PACKAGES – този на приложението Cred. Магазинът Play издава „ краткотрайно изключение “ за прибавяне на това позволение, в случай че приложенията са „ предопределени за улеснение на финансови транзакции, включващи финансово контролирани принадлежности “.
Но нито едно от другите приложения, които проучих в същия сегмент като Cred, като PhonePe и PayTM, нямаше това позволение в манифестните си файлове. Всъщност Cred също дава потребителски заеми и затова, съгласно политиката на Play Store, не може да получи това изключение. Не знам по какъв начин Cred е съумяла да резервира това изключение, което ѝ разрешава да преглежда всички приложения на телефона, без да показва съответен лист.
Прочетох манифестните файлове на към петдесет известни приложения от индийски компании. С изключение на Swiggy, Zepto, Cred и няколко приложения за потребителски заеми, множеството съдържаха много рационални и уважаващи потребителите описи с претенции за приложения.
Очаквах най-лошото. Може би съм прекомерно безсрамен във връзка с тези приложения – белким не могат да бъдат напълно честни?
Бях на път да приключа проучването си, само че забелязах няколко забавни реда, до момента в който преглеждах манифестния файл на едно от тези приложения:
[...]
[...]
Не съм специалист по Android програмиране, само че доколкото разбирам, филтърът ACTION_MAIN в конфигурацията, показана нагоре, ви разрешава да видите всички конфигурирани приложения, които, казано опростено, имат достъп до екрана.
Тъй като множеството конфигурирани приложения имат потребителски интерфейс, този филтър дава на разработчиците достъп до обзор на всички приложения на телефона, без да се постанова да позволяват QUERY_ALL_PACKAGES!
Нахвърлих едно малко Android приложение, употребявайки LLM, и прибавих същия филтър ACTION_MAIN към манифестния файл. И когато се пробвах да направя питане за конфигурираните пакети, както се очакваше, този дребен хак ми разреши да върна листата с всички приложения в телефона!
Това наподобява като голяма дупка в отбраната на персоналните данни на Android. Но допускам, че Play Store евентуално ще блокира приложенията, които употребяват този хак, тъй като това е очевидно нарушаване на политиките за отбрана на данните на потребителите?
От 47 случайно определени индийски приложения филтърът ACTION_MAIN е употребен в 31.
Ето и приложенията, които употребяват този хак:
Astrotalk, Axis Mobile, Bajaj Finserv, BookMyShow, Cars24, Cure.fit, Fibe, Groww, Housing, Instamart, Ixigo, JioHotstar, KreditBee, KukuTV, LazyPay, Ludo King, Meesho, MoneyTap, Moneyview, Navi, NoBroker, Nykaa, Ola, PhonePe, PhysicsWallah, Slice, Spinny, Swiggy, Swiggy Delivery, Tata Neu, и Zomato.
Приложенията, които не употребяват този хак:
Airtel Thanks, Blinkit, Byju’s, MyGate, Dream11, Flipkart, HDFC Mobile, Healthify, INDmoney, MyJio, Paytm, PaisaBazaar, ShareChat, Unacademy, Vedantu, Zepto
Дори глупавата Ludo King има този филтър в своя файл с прокламации. Така че множеството самостоятелни компании могат да видят всички приложения в телефона ви, само че просто го вършат малко по-дискретно от приложения като Swiggy и Zepto. Така че те по никакъв метод не са с добра известност.
Всъщност Swiggy също има тази настройка на филтъра, само че по някаква причина има и експлицитен лист на желаните приложения, макар че елементарно би могла да го направи скрито. Все отново не се окайвам. Този пропуск ми разреши да проуча практиките на Swiggy за събиране на данни. Ако Гугъл прилагаше тази политика вярно, щяхме да знаем какви приложения търсят и другите компании.
Всички манифестни файлове, които изследвах, са оповестени в моя Github. По-голямата част от тях бяха изтеглени.
Тази хакерска офанзива се ползва освен от приложения на индийски компании. Проверих манифестите на някои други известни приложения. Фейсбук, Instagram, Snapchat, Subway Surfers и Truecaller имат тази настройка. Amazon, Spotify, X, Discord и WhatsApp не разполагат с нея. Други приложения не съм изследвал.
Това ме накара да се запитам: какъв е смисълът на политиката на Гугъл за видимост на пакетите? Предполага се, че тя пази потребителите, само че множеството приложения наподобява въпреки всичко са намерили способи да я заобиколят.
А данните за конфигурираните приложения са доста чувствителни и персонални. През 2022 година Vice заяви, че пазарът на данни Narrative продава данни за потребителите, които изтеглят приложения за следене на менструацията си, тъкмо откакто се появиха вести за вероятното анулиране на решението по делото Роу против Уейд (с което в Съединени американски щати се вкара федерално предпазено право на аборт). Това е доста плашеща обстановка.
Инсталираните приложения са един от образците за даване на данни. Голямото многообразие от позволения, включени от всички приложения в техните манифестни файлове, постоянно е доста по-голямо от необходимото; уповавам се някой да проучва и тях.
Ще завърша тази обява с един дребен образец от Zepto. Едно приложение желае позволение за READ_SMS. Можете да го откажете, само че то е наложително, в случай че се абонирате за Zepto Postpaid.
Ако дадете разрешението, приложението ревизира следния лист с идентификатори на изпращачи в пощенската кутия:
Повечето от тях са ID на банки. Приложението евентуално ги чете, с цел да разбере дали да разреши на потребителя да избере опция за разсрочено заплащане. То може да ги прочете даже в случай че не сте го разрешили. Също по този начин, обърнете внимание, че SMS от Blinkit, Swiggy, Bigbasket и Flipkart [забележка: други услуги за доставка на храна] са включени в листата.
Вероятно съперниците вършат същото, просто не оставят такива явни доказателства в самото приложение.
Когато обещано приложение получи позволения като READ_SMS, ние, потребителите, няма по какъв начин да забележим какво чете то.
Следващия път, когато инсталирате приложение в Android устройство, не забравяйте, че тази информация се споделя със света. Брокерите на данни ще я употребяват, с цел да ви профилират, ще я свържат с данните от други рекламни мрежи и в последна сметка тази информация ще бъде употребена, с цел да се дефинира какъв брой да ви таксуват, когато поръчвате да вземем за пример шаурма онлайн.




