Double Encoding (обход WAF)
/ → %2F (одиночное кодирование). Но % тоже кодируется: %2F → %252F. WAF проверяет один уровень, backend декодирует дважды → /. Используется для path traversal: ..%252F..%252Fetc/passwd.
javascript: в href
Браузер выполняет javascript:alert(1) как URL. Кодирование не спасает: браузер декодирует перед выполнением. Защита: allowlist только http:// и https:// в href-атрибутах. Никогда не вставлять user input в href без валидации протокола.
Punycode / IDN Homograph
пример.рф в DNS хранится как xn--e1afmapc.xn--p1ai. Атака: аpple.com где «а» — кириллическая (U+0430), визуально неотличима от латинской «a» (U+0061). Браузеры показывают Punycode для смешанных скриптов.
Open Redirect
Сайт делает редирект на параметр: /redirect?url=https://evil.com. Фишинг: ссылка начинается с доверенного домена. Защита: allowlist разрешённых доменов или проверка что URL ведёт на тот же хост.