Комментарии 27
Очень полезная и интересная статья, спасибо! =)
Чем больше читаю, тем больше понимаю, что по несколько лет существуют дырки и по сути все находятся в перманентной опасности даже несмотря на казалось бы грамотную организацию защиты...
Правильно ли я понимаю, что уязвимость заткнули, но она всё ещё "спит" в новом формате Web App Manifest и "ждёт" новых хитрых способов установки PWA в обход скриптов сайта?
Если ошибке уже три года, означает ли это, что уязвимости подвержены, устаревшие мобильные версии браузеров, которые обновляются вместе с платформой Android (например, телефоны и ТВ), и которую невозможно обновить на устройствах по тем или иным причинам?
А можно как-то коротко для гуманитариев описать в чем именно уязвимость?
Мне в статье вроде все слова понятны, а в чём именно проблема не смог понять.
Данный недостаток позволяет получить исполнение JS кода на фронтенде ( То есть украсть приватные данные пользователя), на любом ресурсе, который имеет функционал загрузки/скачивания файлов. Если грубо и коротко
То есть любой сайт с оплатой может угнать любые данные из браузера плательщика?
Не совсем любые, а относящиеся к уязвимому сайту. Уязвимый сайт - это тот, который позволяет пользователям загружать файлы, и даёт их скачивать обратно с основного домена.
А при чём тут оплата тогда? Не понимаю схему совсем
Оплата тут при том, что Payments API в браузере содержит уязвимость. Разумеется, атакующему не требуется реальный сайт с платежами для атаки, ему надо лишь притвориться таковым.
То есть вместо того, чтобы списать все деньги с карты, раз уж мы попали на ненастоящий сайт оплаты, злоумышленник будет красть данные браузера? Я не понимаю схему, белиберда какая-то
Фишинг с оплатой - это одно, и уязвимостей не требует в принципе (кроме как в голове у пользователя).
Обсуждаемая уязвимость для пользователя "выглядит" как ссылка, по которой нельзя переходить, и кнопка, которую нельзя нажимать. Нажал "оплатить" и получил трояна ещё до того как успел ввести хоть что-нибудь.
То есть кнопка оформлена как загрузка файлов, но открывает форму оплаты?
Причём тут загрузка файлов? Загрузка файлов делается атакующим, не жертвой.
Схема неясна абсолютно. Вроде по-русски пишете, но вообще ничего не понятно
Смотрите, по шагам:
атакующий загружает несколько подготовленных файлов на уязвимый сайт;
атакующий создаёт в где-то интернете страницу, которая запрашивает оплату, указывая ссылку на один из загруженных на шаге 1 файлов в качестве метода оплаты;
атакующий заманивает жертву на свою страницу;
жертва переходит по ссылке;
браузер жертвы получает запрос на оплату и отобразить этот самый запрос;
в процессе отображения запроса на оплату браузер устанавливает для жертвы service worker на сайт из пункта 1.
Итог - пользователь ещё ничего не ввёл, ни с чем не согласился и ничего не понял, но все его данные с уязвимого сайта в руках злоумышленника.
Какой именно шаг непонятен?
Спасибо, это понятно, не понятно как в мой браузер попадёт код мошенника. Ну зальёт он его на сайт, но мне то сайт его как выдаст?
Простите мою душность, если вам надоест отвечать, просто не отвечайте :)
Обычно механизм загрузки файлов на сайт делается как раз для того, чтобы сайт выдавал их обратно, иначе в чём вообще смысл?
Злоумышленник должен направить вас на сайт, который подконтролен ему.
для интереса, вы можете посетить chrome://inspect/#service-workers и увидеть множество Service Worker'ов, используемых в данный момент в вашем браузере
И в самом деле, не пересчитать
История одной уязвимости в Google Chrome