В браузере «Яндекса» исправлен CSRF-баг

В браузере «Яндекса» исправлен CSRF-баг

Исследователь компании Netsparker рассказал в блоге о том, как он, с декабря 2015 года, добивался исправления уязвимости CSRF (Cross-Site Request Forgery) в браузере компании «Яндекс». Баг позволял атакующему обмануть встроенный в браузер инструмент для синхронизации данных, после чего браузер передавал всю информацию пользователя на чужой аккаунт.

Уязвимость была найдена в форме логина браузера «Яндекс», куда пользователь должен ввести свой email и пароль от аккаунта «Яндекс» для создания профиля в браузере. Так как браузер построен на движке Chromium, равно как и сам Chrome, он предлагает пользователям удобную функцию синхронизации всех настроек и данных между разными устройствами. Синхронизируется практически вся информация, включая пароли, закладки, историю браузера, информацию по автозаполнению форм и так далее.

Чтобы эксплуатировать данный баг, атакующему было достаточно заманить пользователя на вредоносный сайт, в коде которого должно было содержаться следующее:

 

 

Таким образом атакующий заставлял браузер отправить POST-запрос на синхронизацию данных, используя вместо данных пользователя, подставные данные атакующего. В результате синхронизация всей конфиденциальной информации производилась с чужим аккаунтом и без ведома жертвы. Исследователь пишет, что приведенный proof-of-concept не работает против Chrome, так как там механизм синхронизации функционирует иначе, сообщает xakep.ru.

На данный момент проблема уже была устранена, но на это потребовалось немало времени. Уязвимость была обнаружена еще в декабре 2015 года, но связаться с «Яндексом» исследователи сумели только 15 января 2016 года, когда вышли на прямой контакт с одним из инженеров компании в Twitter. Он и объяснил исследователям, что для них был создан аккаунт в почте «Яндекса», где, как оказалось, их с 22 декабря 2015 года дожидался ответ компании, гласивший, что специалисты «Яндекса» не сумели воспроизвести атаку. В начале февраля 2016 года исследователи сняли PoC-видео, и в начале марта представители «Яндекса» наконец подтвердили, что эксперты Netsparker обнаружили реальную проблему, и занялись ее устранением. Окончательно CSRF-уязвимость была исправлена только в мае 2016 года.