Решил я как-то запроксировать мобильное приложение от vk.com (android) дело было в августе 2016 года, и посмотреть что и куда утекает.
Каково было моё удивление, когда я увидел как список моего установленного софта на мобильном телефоне просто взял и улетел на api.vk.com да ещё и в открытом виде по HTTP! Как я подозреваю, обладателем списка моего софта установленного на телефоне стал не только сервер api.vk.com (да здравствует MiTM)

Для красоты отображения решил немного причесать json-формат который постится на сервер VK

Как оказалось далее, авторизация мобильного приложения проходит через HTTPS, но при этом существует возможность подмены сертификата, т.к. сервер не использует HSTS

GET-запросом =) передаются логин, пароль и клиент-секрет, при этом по умолчанию юзается «no https all», в ответ получаем токен, с помощью которого далее, по HTTP!!! ходит весь трафик и токен в том числе!

Как оказалось, в запросе присутствует параметр sig (signature), который формирует контрольную сумму запроса, и которая собственно является уникальным значением при каждом запросе.
Как формируется sig, можно прочитать в оффициальной доке к API https://vk.com/page-1_2369497

Думается мне, что при текущем раскладе, написать софт, который будет перехватывать токены и формировать sig по HTTP не такая уж и сложная задача. Вот то что мобильное приложение не ругается на подмену сертификата, так это вообще развязывает руки по полной =)))
З.Ы. Продолжение следует…

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google photo

Для комментария используется ваша учётная запись Google. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.