Ответ
Вот основные методы защиты:
- XSS - экранирование пользовательского ввода, Content Security Policy (CSP), HttpOnly куки:
// Экранирование
function escapeHtml(str) {
return str.replace(/&/g, "&")
.replace(/</g, "<")
.replace(/>/g, ">");
}
- CSRF - токены в формах, SameSite атрибут для кук:
<input type="hidden" name="_csrf" value="токен_с_сервера">
-
SQL-инъекции - параметризованные запросы, ORM
-
CORS - настройка заголовков на сервере:
Access-Control-Allow-Origin: https://trusted.com
-
Clickjacking - заголовок X-Frame-Options: DENY
-
Хранение данных - хеширование паролей (bcrypt), шифрование
-
HTTPS - обязательное использование для передачи данных
-
Защита API - лимиты запросов, JWT аутентификация
-
Заголовки безопасности:
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block