Я нашел способ отследить всех водителей «Ситимобила»
В субботу вечером я, как всегда, сидел и снифил трафик со своего телефона. Внезапно, открыв приложение «Ситимобила», я увидел, что запрос на получение информации о ближайших машинах выполняется без какой-либо аутентификации.
Выполнив этот запрос несколько раз с разными параметрами, я понял, что можно выгружать данные о таксистах практически в реалтайме. Вы только представьте, сколько интересного можно теперь узнать!
С чего все началось?
Да, я действительно сидел и смотрел трафик с телефона. Дело в том, что я инженер и постоянно изучаю, как работают технологии и разные вещи вокруг меня. Так было и в этот раз.
Я нашел уязвимость и написал в Mail.ru Group. Буквально через 3 минуты мне ответили, что эти данные открытые и их не нужно защищать.
Ну раз так, давайте развлекаться!
Анализируем «Ситимобил»
Я написал алгоритм, который за пару десятков секунд собирает информацию о всех таксистах «Ситимобил», которые сейчас на линии в Москве и Московской области. Вот как он работает:
О технических деталях я подробнее говорю в статье на «Хабре», а пока давайте сосредоточимся на результатах.
Думаете, сколько водителей на линии в воскресенье утром?
Но разве нас интересует срез? Давайте посмотрим в динамике.
Найс. А как эти водители распределены в пространстве?
Ну и напоследок давайте проследим за каким-нибудь водителем.
Вот, видно маршрут. А ведь можно еще поднять частоту опроса и получить более точные данные.
И что такого?
А то, что данные вроде как важные.
Во-первых, можно оценить долю рынка и доходность компании «Ситимобил».
Во-вторых, на месте другого агрегатора (например, «Яндекс.Такси») я бы использовал данные о положении таксистов конкурентов. Для ценообразования, например. Или вычислил водителей, работающих и там и там, на основе корреляций в геопозициях.
В-третьих, раз можно отследить конкретного таксиста, можно отследить и его клиента. Это уже серьёзно. По факту можно узнать, куда уехал человек на «Ситимобиле», если вы знаете, где он сел в такси.
Заключение
Не нужно недооценивать важность данных, которые показываются клиенту.
Если Mail.ru Group все еще считает, что эту информацию не нужно защищать, то «Яндекс.Такси», вот вам гора данных. С её помощью вы сможете забрать часть прибыли «Ситимобила».
Если же Mail.ru Group признаёт, что данные чувствительные, и закрывает к ним доступ, то будет честно выплатить вознаграждение по bug bounty.
Как, думаете, ещё можно использовать данные о таксистах?
Спасибо, что дочитали! Надеюсь, вам было интересно.
Успехов!
Автор, можно поконкретнее примеры как эти данные помогут конкурентам забрать часть прибыли Ситимобил? А то складывается ощущение, что вы получили данные и вам кажется что это нечто ценное, а мне кажется что это вода - просто любопытство удовлетворить без какой-либо практической пользы конкурентам.
Вот знает Яндекс где/сколько катают Ситимобилы, а дальше что? Сделать рассылку этим водилам мол вот есть сервис Яндекс.Такси? Думаете они про него не знают? Думаете Яндекс в паре районов работает, а сейчас посмотрит карту движения Ситимобилов и начнёт по другим районам ездить? А местоположение водителей что даст? Это же не стационарные точки...водители там где пассажиры и если в каком-то районе мало водителей Ситимобила, то наверное там глухняк.
Почему вы считаете эти данные багом? Если там личные данные пассажиров есть - однозначно баг. А если просто данные по машинам, то наоборот открытость и прозрачность - нечего скрывать.
Зря минусуете ребята, у карширингов эти эндпойнты для незанятых машин тоже открыты. На них работают агрегаторы к примеру.