Phonk
Использование innerHTML в Angular
При разработке веб-приложения возникают ситуации, когда необходимо добавить на страницу пользовательский HTML-код. Например, при использовании редактора rich-text мы можем захотеть отобразить HTML, сохраненный в базе данных. Однако в фреймворке Angular применяются стандартные меры безопасности, которые могут затруднить эту задачу. Если попытаться использовать функцию innerHTML DOM для добавления HTML на страницу, вы увидите сам HTML-код, а не его отображение. В этом руководстве мы рассмотрим встроенные меры безопасности Angular, которые предотвращают прямую вставку кода, объясним, почему они важны,...
innerHTML вставляет в DOM всё подряд — включая <script>, обработчики событий и другие векторы XSS
Годами единственной защитой были сторонние библиотеки вроде DOMPurify. Firefox 148 стал первым браузером, реализовавшим Sanitizer API — нативную санитизацию прямо при вставке HTML. Метод setHTML() автоматически вычищает опасные элементы до того, как они попадут в DOM...