Веб и безопасность приложений · проверено по источникам

Контекстное кодирование вывода

Контекстное кодирование вывода — преобразование недоверенного значения для конкретного места вставки, чтобы обработчик воспринял его как данные, а не как разметку или код.

Также ищут: Output encoding · контекстное экранирование · output escaping · contextual encoding

Практический смысл

Почему это важно

Даже допустимое значение при неверной вставке может вызвать XSS, изменить URL или разметку.

Доказательная часть

Что подтверждено

  1. Текст HTML, атрибут HTML, JavaScript, CSS и URL обрабатываются по-разному, поэтому для каждого контекста нужен свой способ кодирования или безопасный API.

    Граница применимости: Контексты вывода в браузере.

  2. Проверка входных данных решает, допустимо ли значение, а кодирование вывода безопасно помещает его в конкретный контекст; эти меры не заменяют друг друга.

    Граница применимости: Различие между проверкой ввода и кодированием вывода.

Перед спецификацией

Что проверить

  1. Определите место вставки и его контекст.
  2. Используйте штатный кодировщик фреймворка.
  3. Не вставляйте данные в опасный контекст.
Открытые основания

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

  • Официальная документация

    Cross Site Scripting Prevention Cheat Sheet

    OWASP Foundation · OWASP Cheat Sheet Series, checked 30 August 2026

    Определяет context-specific output encoding и safe sinks; CSP и WAF рассматривает как дополнительные, а не основные XSS controls.

    Открыть первоисточник
  • Официальная документация

    Input Validation Cheat Sheet

    OWASP Foundation · OWASP Cheat Sheet Series, checked 30 August 2026

    Задаёт раннюю server-side проверку syntax и semantics, allowlist approach и границу с output encoding.

    Открыть первоисточник
Сообщить об ошибке

Опишите проблему — постараемся исправить как можно скорее.

Спасибо!

Получили ваше сообщение.
Подтвердите действие