Встречается на собеседованиях • сегодня
Какие знаешь способы защиты от XSS
1. **Экранирование (escaping)** – преобразование спецсимволов в HTML-сущности (например, `<` → `<`).
Пример:
```javascript
const escaped = str.replace(//g, '>');
```
2. **Использование textContent вместо innerHTML** – предотвращает интерпретацию HTML/JS.
```javascript
element.textContent = userInput; // безопасно
```
3. **Content Security Policy (CSP)** – HTTP-заголовок, ограничивающий источники скриптов, стилей и т.д.
Пример заголовка:
```
Content-Security-Policy: default-src 'self'
```
4. **Библиотеки для санитизации** – например, DOMPurify:
```javascript
const clean = DOMPurify.sanitize(userInput);
```
5. **HttpOnly и Secure флаги для кук** – защищает от кражи кук через JS.
6. **Валидация и ограничение ввода** – например, разрешать только определенные символы.
Для React/Vue/Angular: фреймворки автоматически экранируют данные в шаблонах, но важно избегать `dangerouslySetInnerHTML` (React) или `v-html` (Vue) без санитизации.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы