{"id":14285,"url":"\/distributions\/14285\/click?bit=1&hash=346f3dd5dee2d88930b559bfe049bf63f032c3f6597a81b363a99361cc92d37d","title":"\u0421\u0442\u0438\u043f\u0435\u043d\u0434\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0442\u0440\u0430\u0442\u0438\u0442\u044c \u043d\u0430 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0438\u043b\u0438 \u043f\u0443\u0442\u0435\u0448\u0435\u0441\u0442\u0432\u0438\u044f","buttonText":"","imageUuid":""}

Я нашел способ отследить всех водителей «Ситимобила»

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

Выполнив этот запрос несколько раз с разными параметрами, я понял, что можно выгружать данные о таксистах практически в реалтайме. Вы только представьте, сколько интересного можно теперь узнать!

С чего все началось?

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

Я нашел уязвимость и написал в Mail.ru Group. Буквально через 3 минуты мне ответили, что эти данные открытые и их не нужно защищать.

Ну раз так, давайте развлекаться!

Анализируем «Ситимобил»

Я написал алгоритм, который за пару десятков секунд собирает информацию о всех таксистах «Ситимобил», которые сейчас на линии в Москве и Московской области. Вот как он работает:

О технических деталях я подробнее говорю в статье на «Хабре», а пока давайте сосредоточимся на результатах.

Думаете, сколько водителей на линии в воскресенье утром?

4374
таксистов «Ситимобил» на линии в Москве в 11:00 в воскресенье

Но разве нас интересует срез? Давайте посмотрим в динамике.

Найс. А как эти водители распределены в пространстве?

Ну и напоследок давайте проследим за каким-нибудь водителем.

Вот, видно маршрут. А ведь можно еще поднять частоту опроса и получить более точные данные.

И что такого?

А то, что данные вроде как важные.

Во-первых, можно оценить долю рынка и доходность компании «Ситимобил».

Во-вторых, на месте другого агрегатора (например, «Яндекс.Такси») я бы использовал данные о положении таксистов конкурентов. Для ценообразования, например. Или вычислил водителей, работающих и там и там, на основе корреляций в геопозициях.

В-третьих, раз можно отследить конкретного таксиста, можно отследить и его клиента. Это уже серьёзно. По факту можно узнать, куда уехал человек на «Ситимобиле», если вы знаете, где он сел в такси.

Заключение

Не нужно недооценивать важность данных, которые показываются клиенту.

Если Mail.ru Group все еще считает, что эту информацию не нужно защищать, то «Яндекс.Такси», вот вам гора данных. С её помощью вы сможете забрать часть прибыли «Ситимобила».

Если же Mail.ru Group признаёт, что данные чувствительные, и закрывает к ним доступ, то будет честно выплатить вознаграждение по bug bounty.

Как, думаете, ещё можно использовать данные о таксистах?

Спасибо, что дочитали! Надеюсь, вам было интересно.
Успехов!

0
177 комментариев
Написать комментарий...
Георгий Лобушкин

Всем привет. Сергей, ещё раз здравствуйте.  Ситимобил на связи.

Мы внимательно изучили всю ситуацию, описанную Сергеем Крупником. Мы ожидаем, что все детали найденных дефектов, а также любые вопросы касающиеся уязвимостей, будут сначала заданы нам в тикете на HackerOne (https://hackerone.com/reports/756833). В данной ситуации мы не получили всех тех деталей, которые описаны в статье, и очень ждем от автора, что в будущем вместе с ним лично будем обсуждать любые возникающие вопросы. 

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

 По условиям программы Bug Bounty мы не можем можем выплатить вознаграждение после открытой публикации уязвимости. Но от команды Ситимобил считаем важным выдать вознаграждение за сообщение об этой возможности и проделанные усилия для её описании. Мы также готовы предложить Крупнику присоединиться к инженерной команде Ситимобил. Ещё мы призываем всех специалистов, кто занимается безопасностью пользовательских данных, сообщать нам о найденных уязвимостях через сайт HackerOne. Ситимобил очень серьёзно относиться к любым найденным уязвимостям и готов сотрдуничать со всеми, кому не безразлична эта тема. Мы также готовы выплачивать достойные вознаграждения за найденные баги в наших продуктах, но в рамках правил площадки HackerOne. 

Ответить
Развернуть ветку
Dmitry Turmyshev

Странно, что вы «не получили всех деталей описанных в статье», в отчете на HackerOne явно видно, что отчёт полностью отражает ситуацию переданную в статье, а под статьей ваше мнение, что это не является уязвимостью «по вашему мнению». Грустно.

Ответить
Развернуть ветку
David R

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

Ответить
Развернуть ветку
Майский жук

Есть ли смысл вам пояснять, если вы сами не в состоянии понять что можно проворачивать имея доступ к таким данным..?

Ответить
Развернуть ветку
David R

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

Ответить
Развернуть ветку
Dmitry Yankovoy

Вы пост читали?

Ответить
Развернуть ветку
David R

По существу вопроса можете написать?

Ответить
Развернуть ветку
Александр Медведь

Та какие пустые машины??? По вашему водитель чей трек показывали пол Москвы пустым исколесил???

Ответить
Развернуть ветку
David R

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

Ответить
Развернуть ветку
Александр Медведь

Там чётко виден трек, водитель выполняет заказы... Таксисты не колесят пустыми по Москве несколько часов в поисках заказов, иначе они с голоду умрут при нынешней стоимости заказов... Они сейчас их выполняют нон стопом и данный водитель как раз видно, что выполнил несколько заказов!!!

Ответить
Развернуть ветку
David R

Может быть как я написал, а может быть так как вы написали. Но речь ведь не про это. Речь про то какой вред/пользу это может принести кому-то (пассажиру или Сити/Яндексу)?

Ответить
Развернуть ветку
Александр Медведь

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

Ответить
Развернуть ветку
David R

В этом и проблема, что более-менее реальный кейс использования этих данных в практичных целях не даёте, и автор не даёт...но пишите об их опасности. 

По поводу ревнивых жён/мужей или слежения за кем-то :
1) Проще поставить приложение для отслеживания координат и вы будете знать дом в котором находится человек, а не улицу на которой он вышел и неизвестно куда ушел.
2) Открыть почту с ПК и посмотреть маршрут такси по чеку/треку которые высылают на почту (по крайней мере Яндекс)
3) Сервисы такси не самый надежный способ выявить измену/отследить человека, слишком много всяких «если и но». Например, вы вышли с работы из бизнес центра и заказали Сити. Как ваша жена узнаёт в какой вы машине чтобы следить за треком? Наверное возле БЦ больше одной машины Сити....и вот таких всяких условностей вагон, чтобы по такому треку отследить человека..да и сам автор пишет про плюшки конкурентам, а не про вред пассажирам. Хотя плюшек Яндексу я тоже не вижу

Ответить
Развернуть ветку
Michael Smith
День первый
Хакер приходит в общественную столовую и с возмущением обнаруживает, что солонку на столе может открутить кто попало и насыпать туда что угодно. Хакер приходит домой и пишет гневное письмо директору столовой:  "Я, обнаружил уязвимость солонки в Вашей столовой. Злоумышленник может вскрыть солонку и насыпать туда яду! Примите меры срочно!"

...

Ответить
Развернуть ветку
Андрей Серебренников

Уязвимость реально крутая, т.к:

1) Выяснено, что можно выполнять дохулион запросов в сторону сервиса и нет каких-либо ограничений по запросам с одного и того же ip, а это, соответственно, очень хорошая возможность для качественного DDOS сервиса.

2) Если выполняем п.1, то другие агрегаторы начинают получать больше заказов, а значит - больше прибыли.

Ответить
Развернуть ветку
Влад Берг

Про реальные кейсы тебе в даркннте расскажут умнег.

Ответить
Развернуть ветку
Раися Вперде
Ответить
Развернуть ветку
DBocha

Где такси исчезло там пассажир взят
Так где появилось. Пассажир высажен.

Ответить
Развернуть ветку
Blackrock

А номера машин видны ? 

Ответить
Развернуть ветку
Alexey Bulgakov

Давайте я отвечу. Цена предложения коррелирует с количеством доступных машин в потенциальной точке заказа. 

Очень упрощенный пример: Если у Яндекс.Такси 5 машин в точке заказа, то цена могла быть условно 100, но если Яндекс.Такси знает, что у Ситимобил в этой точке 1 машина и цена 200, то Яндекс.Такси может поставить цену 190, его предложение все еще будет лучшим, но маржа вырастет.

Ответить
Развернуть ветку
Аркадий Рутман

Вы, видимо, привыкли сидеть в прохладной серверной перед тремя мониторами, и теперь считаете, что все делают так же. Особенно пассажиры такси, которые открывают аналитику по району с динамикой цен на поездки... И когда вдруг цена в одном из сервисов идёт вниз пассажир машет руками, подаёт специальные знаки и кричит Покупаем, покупаем, покупаем... Так и растёт маржа сервиса на колебании курсов. Это мир биг дата. Это мир трёх мониторов.

Ответить
Развернуть ветку
Alexey Bulgakov

В переводе с претенциозного на русский, вы считает что народ не щелкает между приложениями и не сравнивает цены? 

Ответить
Развернуть ветку
Николай Каменев

Я Вам секрет открою, есть приложение которое показывает цену на поездку в разных агрегаторах

Ответить
Развернуть ветку
Sergey Badaev

Это приложение не учитывает ни ваши скидки, если они есть, ни персональные предложения. Смотрю цену по одному и тому же маршруту в родном приложении и в сравнивалке - цены разные. И смысл в нем тогда?

Ответить
Развернуть ветку
Степан Позняк

При чём ладно специализированное приложение
Даже гугл карты это делают

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
DaemonHK

Спам детектед!

Ответить
Развернуть ветку
Dmitry Turmyshev

Да нет, не в чем, мы же за открытые данные и прозрачность компаний. Просто гражданин из сити предъявляет претензии к сути содержимого в отчете, но кмк отчёт достоверно передаёт суть статьи, указал больше на лукавство.
А так, если хочет мэил делиться данными - отлично. Наверное теперь нагрузка на инфраструктуру чуть увеличится, начнут энтузиасты эксперименты ставить и фетчить данные в циклах, конкуренты уже оценили, думаю.
Наверное, можно такими запросами узнать планы сити по выходу в новые регионы.
Наверное, можно придумать 1003 способа использования хорошо структурированных данных.
Но, разумеется, такое отношение к данным, - это нормально, не проблема - кому это нужно? Как и ваши перс данные в следующий раз и соответствующее отношение «крупных и ответственных» компаний к этому.

Ответить
Развернуть ветку
174 комментария
Раскрывать всегда