Аргентинский исследователь безопасности Мануэль Кабальеро (Manuel Caballero) представил способ обхода политики единства происхождения (Same Origin Policy, SOP) в Microsoft Edge и похищения хранящихся в браузере учетных данных.
Как пояснил эксперт, злоумышленник может подделать происхождение реферера и "благодаря существованию унифицированных идентификаторов ресурса URI и тому, что многие сайты отображают плавающие фреймы", проэксплуатировать уязвимость и обойти SOP.
"Поскольку менеджер паролей пытается быть умным и завершает все без лишней проверки, мы можем отобразить универсальный фрагмент кода, способный работать где угодно", - сообщил Кабальеро. Исследователь также разработал PoC-код.
По словам исследователя, атакующий может заставить окно изменить свое расположение так, как будто оно само и является инициатором изменения. К примеру, вкладка evil.com может изменить расположение вкладки PayPal на bankofamerica.com. В таком случае BankofAmerica вместо evil получит в качестве реферера PayPal, поскольку Edge примет поддельный источник запроса за настоящий. "Если мы применим данный подход к плавающим фреймам на атакуемой странице плюс унифицированный идентификатор ресурса с кодом, мы сможем полностью обойти SOP", - отметил исследователь.
Кабальеро также рассказал, как получить cookie-файлы Google. Если внедрить предоставленный им фрагмент кода в домены с сохраненными паролями, Edge незамедлительно автоматически заполнит их:
<form>
<input />
<input type="password" />
</form>
Если отправить жертву на Facebook, следующий код покажет пароль:
<form>
<input />
<input type="password" onchange="alert(this.value)" />
</form>