В Chrome появится защита от XSS-атак через DOM
Инженеры Google работают над новым API для браузера Chrome, который призван защитить пользователей от определенного типа XSS-атак, в частности, XSS через DOM (DOM Based XSS). Специалисты планируют протестировать функцию под названием Trusted Types на протяжении 2019 года (в версиях Chrome 73 - 76) и, если все пойдет как положено, новый функционал станет постоянным.
Эксперты различают несколько типов XSS: «отраженные» («reflected XSS» или «Type 1»), «хранимые» («stored XSS» или «Type 2»), XSS через DOM. Последняя, по сути, представляет собой уязвимость в исходном коде сайта, которой злоумышленники могут воспользоваться для совершения различных действий - кражи файлов cookie, манипуляции содержимым страницы, переадресации пользователей и пр.
Задача Trusted Types заключается в предотвращении подобного рода атак путем блокировки «точек внедрения» кода в код web-сайта. Включить новую функцию владельцы сайтов смогут в настройках CSP (Content Security Policy), выставив определенное значение. Более подробно новый функционал описан в блоге Google.
Trusted Types станет второй функцией Chrome, направленной на защиту от XSS-атак, после фильтра XSS Auditor, представленного в выпущенной в 2010 году версии Chrome 4.
XSS в DOM-модели возникает на стороне клиента во время обработки данных внутри JavaScript сценария. Данный тип XSS получил такое название, поскольку реализуется через DOM (Document Object Model) - не зависящий от платформы и языка программный интерфейс, позволяющий программам и сценариям получать доступ к содержимому HTML и XML-документов, а также изменять содержимое, структуру и оформление таких документов. При некорректной фильтрации возможно модифицировать DOM атакуемого сайта и добиться выполнения JavaScript-кода в контексте атакуемого сайта.