Trusted Types
Что такое Trusted Types?
Trusted TypesБраузерный API и CSP-директива, предотвращающие DOM-XSS: опасные DOM-приёмники принимают только типизированные значения, прошедшие политику, вместо строк.
Trusted Types — защита, разработанная Google и стандартизированная W3C, нацеленная на устранение DOM-XSS. При включении директив CSP require-trusted-types-for и trusted-types браузер отказывается выполнять приёмники вроде innerHTML, document.write, eval и script.src, если им передана обычная строка. Код должен создавать типизированные объекты (TrustedHTML, TrustedScript, TrustedScriptURL) через именованные, проверенные политики. Так все опасные записи в DOM проходят через узкую и аудируемую поверхность, что устраняет большинство устаревших XSS-приёмников. Широко применяется в Google, Bing, Shopify и других крупных веб-проектах.
● Примеры
- 01
Content-Security-Policy: require-trusted-types-for 'script'; trusted-types default;
- 02
Замена element.innerHTML = userInput на element.innerHTML = policy.createHTML(userInput).
● Частые вопросы
Что такое Trusted Types?
Браузерный API и CSP-директива, предотвращающие DOM-XSS: опасные DOM-приёмники принимают только типизированные значения, прошедшие политику, вместо строк. Относится к категории Безопасность приложений в кибербезопасности.
Что означает Trusted Types?
Браузерный API и CSP-директива, предотвращающие DOM-XSS: опасные DOM-приёмники принимают только типизированные значения, прошедшие политику, вместо строк.
Как защититься от Trusted Types?
Защита от Trusted Types обычно сочетает технические меры и операционные практики, как описано в определении выше.