length_hiding_types

Директива `length_hiding_types` указывает типы содержимого, для которых в ответах будет применяться случайное скрытие длины.

Синтаксисlength_hiding_types type [type ...];
По умолчаниюnone
Контекстhttp, server, location
Аргументы1+

Описание

Директива length_hiding_types является частью NGINX Length Hiding Filter Module и определяет MIME types ответов, к которым должно применяться случайное скрытие длины. Эта функция предназначена для смягчения последствий специфических атак, таких как BREACH, путём добавления случайных HTML-комментариев в конец ответов, что затрудняет злоумышленникам определение длины конфиденциальных ответов на основе изменяющихся размеров содержимого. Она принимает один или несколько аргументов, представляющих действительные MIME types (например, 'text/html', 'application/json'), и добавляет случайные байты к ответам указанного типа содержимого.

Директиву можно разместить в контекстах http, server или location, что обеспечивает гибкость настройки для целых серверных блоков или отдельных локаций. Каждый указанный тип будет сравниваться с типом содержимого ответа, и если он совпадает, будут добавлены случайные данные. Это может повысить безопасность за счёт введения непредсказуемости в размерах ответов, что усложняет анализ для потенциальных злоумышленников.

Пример конфига

location /secure {
    length_hiding on;
    length_hiding_types text/html application/json;
}

Убедитесь, что length_hiding включён, чтобы директива имела какой-либо эффект.

Определите типы содержимого, которые точно отражают то, что выдаёт ваше приложение; в противном случае к некоторым ответам не будут добавлены случайные байты.

Помните, что эта директива может работать некорректно, если её использовать с типами ответов, не указанными в настроенном списке.

← Ко всем директивам