Результаты поиска по запросу

Дополнительные фильтры
Теги:
новый тег
Автор поста
Рейтинг поста:
-∞050100200300400+
Найдено: 1000+
Сортировка:

Отличный комментарий!

- Робот может написать? Симфонию.
- Симфонию

Все знают ваше местоположение: отслеживание себя через рекламу в приложениях

,кибернебезопасность,длиннопост,много букав
Недавно я прочитал о масштабной утечке геолокационных данных из Gravy Analytics, благодаря которой стало известно, что более двух тысяч приложений из AppStore и Google Play тайно собирали геолокационные данные пользователей без их согласия. И часто об этом не знали даже разработчики.
Я изучил список (ссылка) и обнаружил как минимум три приложения, установленные на моём iPhone. Проверьте сами!
У меня возникла идея: попробовать отследить себя снаружи, то есть купить свои геолокационные данные, утёкшие через какое-нибудь приложение.
----------------------------------------------------------------------

▍ TL;DR

Я потратил пару десятков часов и получил следующие результаты:
- Я обнаружил пару запросов, отправленных моим телефоном, в которых содержалось моё точное местоположение + 5 запросов, через которые утекал мой IP-адрес, который при помощи обратного просмотра DNS можно превратить в геолокацию.
- Я много узнал об аукционах с торгами в реальном времени (RTB, real-time bidding) и протоколе OpenRTB; меня поразили объём и типы данных, отправляемые с заявками к биржам рекламы.
- Отказался от идеи покупки данных о моём местоположении у брокера данных или сервиса слежения, потому что у меня нет достаточно большой компании, чтобы получить пробный режим или выложить 10-50 тысяч долларов на покупку огромной базы данных с данными миллионов людей + меня.
Ну, на самом деле, деньги-то есть, но такие траты мне кажутся немного нерациональными.
Оказалось, что данные людей из Евросоюза почти самые дорогие.
Но я всё равно знаю, что мои данные о местоположении собираются, и знаю, где их купить!
----------------------------------------------------------------------

▍ Начальная точка

- Свой старый iPhone 11, сброшенный до заводских настроек + новый Apple ID. Мне было слишком некомфортно делать всё это на моём нынешнем телефоне.
- Charles Proxy для записи всего входящего и исходящего трафика. Я настроил на iPhone сертификат SSL для дешифровки всего HTTPS-трафика.
- Простая игра Stack издателя KetchApp — помню, как играл в неё в школе 10-12 лет назад. Почувствовал ностальгию при выборе этой «лабораторной крысы».
К моему удивлению, в списке оказалось много игр KetchApp.
,кибернебезопасность,длиннопост,много букав
----------------------------------------------------------------------

▍ Огромное количество запросов

Итак, поехали: мы установили всего одно приложение, если не считать приложений Apple по умолчанию и включённого Charles. Запуск Stack через 3, 2, 1…
Это запросы, которые отправляет приложение в первую минуту после запуска.
Взгляните на время между запросами — они отправляются почти каждую долю секунды.
Давайте изучим содержимое запросов.
Я действительно проверил каждый, но оставил только самые интересные.
----------------------------------------------------------------------

▍ Unity [ads]

Давайте начнём с самого сочного запроса, отправленного к https://o.isx.unity3d.com — в нём первом есть моя геопозиция, хоть я и отключил Location Services на iPhone для всех приложений!
Если вы столь же наивны, как и я до этого, то можете удивиться — как 3D-движок Unity связан с рекламой внутри приложения и с отслеживанием местоположения?
Возможно, это просто мониторинговые данные, помогающие совершенствовать движок?
Оказывается, основной источник доходов Unity (в 2023 году компания заработала больше 2 миллиардов долларов) — это Unity Ads, «рекламная сеть для мобильных игр». Звучит любопытно.
Ниже показано тело отправленного Unity Ads запроса в формате JSON. Я оставлю только стоящие упоминания поля — полный запрос содержит больше двухсот ключей.
{
"ts": "2025-01-18T23:27:39Z", // Метка времени
"c": "ES", // Код страны,
"d": "sports.bwin.es", // Домен; приложение или веб-сайт, на котором будет отображаться реклама.
"bn": "molocoads-eu-banner", // Что это за moloco ads? Разберёмся ниже!
"cip": "181.41.[данные удалены]", // Мой IP !!
"dm": "iPhone12,1",
"ct": "2", // Тип соединения, например, Wi-Fi
"car": "Yoigo", // Оператор мобильной сети
"ifv": "6B00D8E5-E37B-4EA0-BB58-[данные удалены]", // ID для вендора. Мы к этому вернёмся!
"lon": "2.[данные удалены]", // Долгота ...
"lat": "41.[данные удалены]", // Широта ...
"sip": "34.227.224.225", // IP-адрес сервера (Amazon AWS в США)
"uc": "1", // Согласие пользователя на отслеживание = True; чего???
}
Итак, мои IP + местоположение + метка времени + какой-то id ifv передаются Unity → Moloco Ads → Bwin, после чего я вижу рекламу Bwin в игре.
Великолепно!
Небольшое примечание: отправленное местоположение было не очень точным (но в пределах того же почтового индекса); наверно это вызвано тем, что iPhone был подключён к WiFi и в нём отсутствовала SIM.
Если бы это была LTE, то уверен, что долгота и широта оказались бы гораздо точнее.
----------------------------------------------------------------------

▍ Привет, Facebook*… А ты тут что делаешь?

Следующим интересным запросом, через который утекли мои IP + метка времени (= данные о геопозиции ), был Facebook*.
Что?!
- На этом iPhone не установлено никаких приложений Meta* [Facebook*].
- Я не привязывал ни приложение, ни Apple ID к аккаунту Facebook*.
- Я не давал согласия на то, чтобы Facebook* получал мой IP-адрес
Тем не менее, запрос выглядит так:
{
"bundles": {
"bidder_token_info": {
"data": {
"bt_extras": {
"ip":"181.41.[данные удалены], // отличные "дополнительные данные", ребята
"ts":1737244649
},
"fingerprint": null
},
{
"куча данных, да просто огромная куча"
}
Подробнее мы поговорим об этом в следующем разделе.
----------------------------------------------------------------------

▍ Зачем вам нужен уровень яркости моего экрана?

Последний заинтересовавший меня запрос был отправлен… снова Unity: https://configv2.unityads.unity3d.com.
Посмотрим, что же столь необходимо Unity в этой конфигурации:
{
"osVersion":"16.7.1",
"connectionType":"wifi",
"eventTimeStamp":1737244651,
"vendorIdentifier":"6B00D8E5-E37B-[данные удалены]", // снова ifv
"wiredHeadset":false, // что, простите?
"volume":0.5,
"cpuCount":6,
"systemBootTime":1737215978,
"batteryStatus":3,
"screenBrightness":0.34999999403953552,
"freeMemory":507888,
"totalMemory":3550640, // это ОЗУ?
"timeZone":"+0100",
"deviceFreeSpace":112945148
"networkOperator":"6553565535"
"advertisingTrackingId":"00000000-0000....", // интересно...
}
Здесь нет «личной информации», но, честно говоря, меня пугает этот объём данных, передаваемый неизвестному списку третьих сторон.
Зачем им знать яркость моего экрана, количество памяти, громкость и то, пользуюсь ли я наушниками?
«Правильный» ответ мне известен — всё это нужно, чтобы компании лучше таргетировали свою аудиторию!
Например, если вы рекламируете мобильное приложение размером 1 ГБ, а у пользователя осталось всего 500 МБ, то какой смысл показывать ему приложение, правда?
Но по этой теме я слышал и много противоречивой информации.
Например, что Uber динамически меняет стоимость такси в зависимости от уровня заряда аккумулятора, потому что вы не будете ждать более дешёвого варианта, когда у вас осталось всего 4% и вы находитесь на улице.
Не знаю, что из этого правда.
Но то, что такие данные доступны рекламодателям, предполагает, что они как минимум могут задуматься об их использовании.
Лично я бы задумался.
Ну да ладно, закончим с запросами.
Мы уже увидели примеры разных утечек IP и геолокации.
Ещё одним «поставщиком» получившим мой IP + метку времени был adjust.com, но тело запроса оказалось слишком скучным, и я его пропустил.
----------------------------------------------------------------------

▍ Давайте поговорим об ID

Должно быть, вы уже заметили в запросах ifv и advertisingTrackingId == IDFA. Что же это такое?
IFV, или IDFV — это «ID для вендора» («ID for Vendor»).
Это мой уникальный ID для каждого вендора, или разработчика — в данном случае для KetchApp.
Это подтверждается: я установил ещё одну игру KetchApp, записал запросы, и значение ifv оказалось для неё таким же.
Advertising Tracking ID — это значение для всех вендоров, оно передаётся приложению, если вы выберете «Allow app to track your activity across ...».
Как мы видим, оно действительно равно 000000-0000..., потому что я не разрешил приложению выполнять отслеживание.
Я проверил это, вручную отключив и включив опцию слежения для приложения Stack, и сравнив запросы в обоих случаях.
----------------------------------------------------------------------

▍ И это единственное различие между запретом и разрешением на отслеживание

Я понимаю, что в этом для вас может не быть ничего нового — это особо не скрывается, можно, например, почитать документацию Apple для разработчиков.
Но я считаю, что это не доносится до конечного пользователя корректно: что бесплатные приложения, которые вы устанавливаете и используете, собирают их точное местоположение с меткой времени и отправляют их сторонним компаниям.
Единственное, что мешает любому с доступом к заявкам на данные (ещё одному покупающему рекламу агенту, бирже рекламы или датасету, купленному или арендованному у брокера данных, как мы увидим ниже) отследить все ваши перемещения — это IDFA, который не передаётся, когда мы запрещаем приложениям «отслеживать нас между приложениями» с целью «улучшения и персонализации отображения рекламы».
Кстати: если вы пользуетесь десятью приложениями одного вендора (Playrix, KetchApp или какой-то другой компании с тысячей приложений) и разрешили лишь одному приложению отслеживать вас, то данные, собранные во всех десяти приложениях, пополнят ваш IDFA, который позже может быть заменён на ваши личные данные.
В то же время, в запросах есть не так много данных, как я ожидал, поэтому биржи рекламы вряд ли нашли какой-то хитрый обходной ID, который бы позволил выполнять отслеживание между приложениями без необходимости IDFA.
Я обнаружил примерно двадцать ID наподобие tid, sid, device_id, uid (два последних передаются Facebook*) и так далее.
Кстати, настоящее безумие, что Facebook* получил мои IP + метку времени без какого-либо адекватного согласия/связи с приложением с моей стороны.
Думаю, Facebook* с лёгкостью сможет восполнить пробелы и связать мой аккаунт с этими данными, как только я залогинюсь в Instagram* или Facebook* по тому же IP-адресу.
----------------------------------------------------------------------

▍ Как выглядит поток данных?

Давайте ненадолго вернёмся к запросу, через который утекло моё местоположение, и взглянем на его трассировку. Обратим внимание на сторону посередине: stack → o.isx.unity3d.com → molocoads → bwin (рекламодатель).
Unity [ads] — это SSP (supply-side platform), который участвует как сборщик данных из приложения с помощью SDK.
Вам, как разработчику приложения, не нужно беспокоиться о сборе нужных данных, регистрации в качестве издателя, биржах рекламы или чём-то подобном — достаточно установить SDK и получать деньги.
Ну ладно, а что насчёт Molocoads?
,кибернебезопасность,длиннопост,много букав
Скриншот лэндинга Molocoads
Moloco ads — это DSP-сеть, перепродающая данные множества SSP (например, Unity, Applovin, Chartboost). По сути, каждого из запрошенных хостов, которые я увидел в Charles Proxy.
Она выполняет некую «смарт-оптимизацию» и связывает пустое место под баннер на экране телефона с рекламодателем.
Похоже, moloco агрегирует кучу данных, и практически любой (нужно уточнить: любая компания, ставшая рекламным партнёром) может получать доступ к данным, сделав ставку ниже, чем другие.
Или представьте реальную биржу рекламы, которая делает обычные ставки и попутно собирает все данные в качестве «дополнительного заработка».
По сути, именно так получают свои данные аналитические агентства и брокеры данных.
Тут я начал искать любые упоминания Moloco в Telegram и Reddit, и наткнулся на пост, в котором нашёл ответы на многие свои вопросы:
,кибернебезопасность,длиннопост,много букав
Я не особо знаком с реалиями RTB-рекламы. Надеюсь, люди из этой сферы смогут меня просветить.
Меня немного удивило то, что множество разных компаний может получать, по сути, данные логов сервера от каждой посещённой пользователем страницы. Сотни элементов данных при каждой загрузке страницы, в том числе IP-адреса, user agent, куки, точный URL и так далее.
Я просто не понимаю, как это работает.
- В частности, интересен этот комментарий. Процитирую его часть:
Они имеют доступ к данным, если договорятся об интеграции с поставщиком bidstream, то есть с SSP. Сам SSP должен уведомлять вендора о том, кому он даёт доступ к заявкам. Обычно для этого достаточно лишь… сделать заявку.
SSP хотят, чтобы вы тратили деньги, именно так их бизнес приносит прибыль. Они могут открывать только часть трафика отдельным вендорам (например, если вы делаете заявки не на весь мир, то не получите всемирный bidstream, а только для тех регионов, в которых ведёте
бизнес).
Великолепно.
----------------------------------------------------------------------

▍ Брокеры данных

Давайте двигаться дальше. Когда я выяснил, как утекают данные, то начал искать любые места, где их продают. Искать пришлось недолго.
Я обнаружил маркетплейс данных под названием Datarade, представляющий собой панель со всевозможными данными. Когда я начал искать данные, относящиеся к MAID, то увидел сотни вариантов на выбор, например, такие:
,кибернебезопасность,длиннопост,много букав
Цена датасета Redmob удивила меня: 120 тысяч долларов в год… За что?
Давайте посмотрим, что в нём обещают:
,кибернебезопасность,длиннопост,много букав
Посмотрите на список возможностей справа: не кажутся они вам знакомыми?
Примечание: «low latency» означает, что в датасете есть ваше местоположение за то время, когда его в последний раз передало любое из приложений. То есть может быть даже 5
секунд.
Более того: Redmob предоставляет бесплатный образец своих данных.
Я попробовал запросить его на веб-сайте, но образец мне на почту так и не пришёл (наверно, timsh.org не кажется заказчиком с высоким потенциалом).
К счастью, образец публично доступен на Databricks Marketplace с такой аннотацией:
Обогатите свои продукты и сервисы при помощи наших глобальных данных о местоположении, охватывающих более 1,5 миллиарда устройств. Благодаря нашему подробному датасету местоположений вы сможете выявлять скрытые паттерны, выполнять мгновенный анализ и получать глубинное понимание информации.
Также мы предоставляем данные по конкретным регионам (странам Ближнего Востока и Северной Африки, Африке, Азиатско-Тихоокеанскому региону и так далее), исходя из ваших потребностей. В нашей модели ценообразования есть опция ежегодного лицензирования. Кроме того, мы предоставляем бесплатный образец данных, чтобы вы могли самостоятельно оценить качество нашего датасета.
,кибернебезопасность,длиннопост,много букав
Часть образца данных для большей наглядности
Самой абсурдной для меня частью стал столбец app — очевидный источник данных. Также меня заинтересовал столбец yod — если это год рождения, то откуда его берут? Впрочем, ладно, кого интересует год рождения.
----------------------------------------------------------------------

▍ Покажи мне персональную информацию!

Ну ладно, допустим, я купил доступ к огромному потоку данных Redmob.
Но моя цель — отслеживать и преследовать людей вроде меня, поэтому мне каким-то образом нужно обмениваться MAID (=ifa) для персональной информации: имени, адреса, номера телефона…
Без проблем! Как ни удивительно, такой датасет тоже присутствует в Datarade.
Взгляните на таблицу из образца с типом MAID <> PII, предоставленным «AGR Marketing Solutions»:
Внутри находится вся персональная информация (полное имя, почтовый адрес, номер телефона, физический адрес, владение собственностью… и IDFA.
Поздравляю, мы добрались до дна этой кроличьей норы.
Под конец сделаем пару смелых заявлений.
----------------------------------------------------------------------

▍ Как себя отследить?

Очень просто! Достаточно воспользоваться этой инструкцией:
1 - Немного попользуйтесь бесплатными приложениями. Перемещайтесь на машине и пешком — это сделает геопозиционные данные более ценными.
2 - «Разрешите» или «попросите не отслеживать» — комбинация из IP + местоположения + User-agent + геолокации всё равно утечёт сотням «сторонних компаний», вне зависимости от вашего выбора.
3 - Подождите несколько секунд, чтобы фальшивые DSP и брокеры данных получили ваши данные.
4 - Обменяйте ваше полное имя или номер телефона на IDFA (если он есть), IP-адрес и user-agent через купленные где-нибудь данные MAID <> PII.
5 - Теперь зайдите в «Mobility data», содержащие историю геолокаций, и отфильтруйте их по значениям из предыдущего этапа.
Поздравляю! Вы себя нашли.
Я создал диаграмму, в которой содержатся почти все упомянутые выше акторы и данные. Теперь вы можете увидеть, как это всё связано.
,кибернебезопасность,длиннопост,много букав
Это самое худшее в таких торгах данными, которые постоянно происходят по всему миру — каждая отдельная мелкая часть их легальна (или кажется такой). Пугают они только тогда, когда видишь картину в целом.
----------------------------------------------------------------------

▍ Послесловие

На моё расследование сильно повлияли следующие посты и исследования:

Отличный комментарий!

Если тебя хотят найти, то без проблем найдут. Хорошо что "ты", по большей части, нахуй никому не нужен.

Отличный комментарий!

Боже, что это за чудище! Ааа.., это же просто мой тигр!

Отличный комментарий!

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

Отличный комментарий!

Жополом. Жополом. Единственный в мире альен-жополом!
Вот и всё.. вчера 06.02.2025 ушёл из жизни мой друг и моя моральная опора, был он со мной что то около 9ти лет
Его звали Макита.. для моих друзей "Макита трейдинг корпорейшон"
То что часть про трейдинг была у него не сразу, мой друг работал экспедитором и у него был заказ что-то туда отвезти, ну и фигма так называлась Макита трейдинг, вот и посмеялись так и привязалось)
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
Где-то летом 2016го года я выносил мусор и услышал тихое мяуканье, заглянул в мусорку и там лежал еле живой комочек моего счастья, был он среди уже не живых своих братьев и сестёр.. кто то утопил их с пакете и выбросил у мусорку.. только один Макита остался
У Макиты был странный фетишь, очень любил пить воду из ванной когда я там мылся)
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
Ещё у него была очень классная особенность, он очень любил бодаться, стоит оказаться рядом с его прекрасной моськой - то он сразу же её проторанит (причём сильно) но потом обязятельно полижет)
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
Его любимое место времяприпровождения это раковина, она была ему как влитая!
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
несколько забавных фото!
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
Ну и понятно что 9 лет для кота как правило это только половина жизни, ну и почему так.. рано
Примерно 2 месяца назад Маките стало плохо, его стало тошнить кормом ( такое бывало когда он обжирался) поэтотому в первый день я не придал значение, на утро 3го дня я таки повёз его в вет клинику - диазнос был таков кишечнике посторонний предмет, скащали что нужна операция, на что было дано согласие.
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
Посторонним предметом оказался малюсенький кусочек самого обычного пакета.. наверное достал из мусорки..
Следующий месяц был тяжёлый, были таблетки и уколы.
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
Потом ещё добавилась желтуха, отвезли опять в веткилинику и нам прописали ещё и уколы
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
но и её мы победили!
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
тут я был очень рад тому что Макита стал сам кушать, раньше он сам пил только воду, а кормить его приходилось насильно через шприц
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
В целом мы шли на поправку, вот фото перед поездкой на снятие понпона и швов
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
Всё прошло отлично, сняли швы, ветеренары сказали что думали он не выживет.. говорил нужно быть аккуратнее.. у него сталось последняя 9я жизнь..
Все мои друзья и родные поздравляют и выздоровлением
Пару недель он был резвее чем даже до всего этого!
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
Вот только в один момент в ванной когда чистил зубы я устышал чавканье из его лотка, как оказалось он начал есть свой наполнитель ( это был силикагель) и я понятия не имею какое время он его уже ел
Спустя час мы были опять в ветеринарной клинике, на узи было сказано что у него весь кишечник забит, ещё одну операнию делать не вариант, он не выживет тк как ещё слаб для такого, единсвенным вариантом было делать ему клизму и надеятся что оно выйдет само.. в общем что-то выходило.. но лучше Маките не становилось, пил он только воду и очень часто рыгал.. у меня были надежны.. думал ну раз с клизмой что то выходит значит он прочистился ( позже ветеранар так и сказал, я кобы он прочистился) в общем пару дней спустя ночью ему стало очень плохо, он громко кричал и какал.. и я наверноре уже понимал что это конец, ближе к 5ти он успокоился и мы просто лежали ожидая конца, были мысли закончить его мучения и свести в ветеренарку.. но.. всё закрыто, оставалось просто плакать, моя мама просила сфоткать его, вот его последние часы
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
Через час он умер у меня на руках.
это было ужастно, я не мог в это поверить, после его похорон я пришёл в пустую квартиру и опустошённый и не мог понять почему Макита меня не втречает
я.. не могу принять это, его нет, Макита лежит там один в холоде, хочу придти и забрать его.. а вдруг..
Прощай Макит, я тебя люблю. как я без тебя, незнаю
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных
,животные реактора,котэ,прикольные картинки с кошками,прощай друг,песочница,RIP,кладбище домашних животных

Отличный комментарий!

алкашка, наверное, самая хуевая идея для сна. знаешь, почему ты не видишь снов после этого? алкоголь в крови не дает тебе полностью погрузится в рем стадию сна, в которой большинство снов. с другой стороны, это еще и та самая полезная часть отдыха для мозга. так что дети, не слушайте совета бати и не бухайте "для сна"
Здесь мы собираем самые интересные картинки, арты, комиксы, мемасики по теме (+1000 постов - )