Два «детских» бага в TikTok позволяли красть аккаунты в один клик
В сентябре 2020 г. TikTok устранил две критические уязвимости в своих ресурсах, комбинация из которых позволяла перехватывать контроль над чужими аккаунтами с минимумом усилий.
XSS плюс CSRF
В TikTok обезврежена опасная уязвимость, допускавшая захват чужого аккаунта «в один клик», сообщает Bleeping Computer. Уязвимость обнаружил проживающий в Германии эксперт по поиску багов Мухаммед Таскиран (Muhammed Taskiran). По его сведениям, TikTok был беззащитен перед атаками межсайтового скриптинга, а конкретнее неперсистентного XSS.
Такая уязвимость возникает, когда веб-приложение не производит проверку пользовательского ввода и немедленно исполняет его команды. Злоумышленник таким образом имеет возможность внедрить произвольный код на пользовательской стороне.
Таскиран обнаружил баги при fuzz-тестировании доменов tiktok.com и m.tiktok.com. Кроме того, он обнаружил еще один баг разновидности CSRF (межсайтовая подделка запросов), который позволял изменять пароли к аккаунтам пользователей, использующих сторонние приложения для входа в сервис.
Комбо-два
Комбинация из двух уязвимостей позволяла захватывать чужие аккаунты с минимальными усилиями. «Я скомбинировал обе уязвимости с помощью короткого вредоноса на JavaScript, который запускает CSRF-атаку, и внедрил его в уязвимый URL-параметр, тем самым добившись захвата аккаунта в один клик», — отметил исследователь.
Проинформировав TikTok о проблеме, Таскиран получил награду в размере $3860. Уязвимость была устранена еще в сентябре 2020 г.
«XSS- и CSRF-уязвимости весьма распространены; время от времени их находят в веб-приложениях даже самых крупных компаний, — указывает Алексей Водясов, технический директор компании SEC Consult Services. — Однако в большинстве случаев это, что называется, “зевки” — результат использования малонадежного стороннего кода или простая забывчивость программистов. К сожалению, она может обходиться довольно дорого. И хорошо, если баг находят этические хакеры — вознаграждение им обойдется на несколько порядков дешевле, чем устранение последствий реальной атаки. К тому же механизмы защиты от этих уязвимостей давно известны».