SYSTEM ATLASЗагрузка материала

Output Encoding

Output Encoding

Данные кодируются под конкретный контекст вывода для предотвращения инъекций.

Простыми словами

Представьте перевод специальных знаков в безопасную запись перед вставкой в веб-страницу. Output encoding заставляет браузер показывать пользовательский текст как данные, а не выполнять его как код, поэтому снижает риск внедрения сценариев.

Механизм действия

Сначала проверяют, есть ли исходное условие из определения. Затем смотрят, как оно влияет на структуру компонентов, потоки данных, ограничения и действия участников. Если эту связь не удаётся наблюдать, принцип не стоит использовать как готовое объяснение.

Пример в работе

Нерабочий подход

Применять локальное решение без проверки контекста, ограничений и вторичных последствий.

Системный подход

Сначала определить механизм, затем выбрать минимальное изменение и измерить результат.

Ограничения

«Output Encoding» объясняет только часть происходящего в области «Безопасность». Сам принцип не говорит, насколько сильным будет эффект в вашем случае, и не заменяет измерения. При другом масштабе, среде или временном горизонте результат может отличаться.

Источник

OWASP Foundation. Cross Site Scripting Prevention Cheat Sheet (current).

Первоисточник