Эксперт из Appsecure Ананд Пракаш обнаружил в инструменте Account Kit от Facebook ошибку, которая делает пользователей сервиса для знакомств Tinder уязвимыми для взломов.
При открытии учетной записи пользователем Tinder, использующим телефонный номер в качестве логина, сервис посредством сайта AccountKit.com проводит проверку, на самом ли деле этот человек является законным владельцем профиля.
На телефон пользователя отправляется текстовое сообщение, содержащее код подтверждения. Его нужно ввести на сайте Account Kit, который проверит подлинность кода. Если личность владельца профиля будет подтверждена, сайт отправит Tinder токен авторизации, после чего пользователь может зайти в свой аккаунт, не вводя пароль. Tinder имеет привязку к телефонному номеру, потому, пока у пользователя есть возможность получать текстовые сообщения, он сможет легко открывать свою учетную запись.
Однако Ананд Пракаш выяснил, что Account Kit не проводит проверку подлинности кода подтверждения, если его API применяется определенным образом. Хакер может воспользоваться телефонным номером в качестве параметра new_phone_number в HTTP-запросе, который отправляется API. Это позволяет не только избежать проверки кода, но и получить токен авторизации. Таким образом, можно отправить Account Kit любой телефонный номер и получить токен в виде файла cookie в HTTP-ответе на запрос, который поступивший от API.
Пракаш информировал Facebook и Tinder о своей находке и получил премии на общую свыше 6000 долларов в рамках программ bug bounty. Исследователь обнародовал информацию об уязвимости после выхода патчей.