length_hiding_max
Директива `length_hiding_max` настраивает максимальную длину случайных байтов, добавляемых к HTTP-ответам для сокрытия их реальной длины.
Описание
Директива length_hiding_max является частью модуля фильтра сокрытия длины NGINX, который помогает смягчить атаки типа BREACH путем добавления к HTTP-ответам случайно сгенерированного содержимого. Эта директива позволяет администраторам задать максимальный предел для случайной длины таких добавлений. Скрывая реальную длину ответа, она значительно затрудняет злоумышленникам определение наличия в ответах конфиденциальной информации.
Директива принимает один целочисленный аргумент, который задает максимальное количество байт, добавляемых к ответу. Это помогает гарантировать, что сокрытие длины не превысит установленный порог, обеспечивая разумный баланс между безопасностью и производительностью. Как правило, эта длина может колебаться от 256 до 2048 байт, как это принудительно задается ограничениями конфигурации, встроенными в исходный код. Добавляемое содержимое будет иметь разную длину для каждого ответа, что добавляет уровень непредсказуемости.
При использовании директивы length_hiding_max важно включить модуль сокрытия длины с помощью директивы length_hiding. Это позволяет добавлять случайное содержимое только для соответствующих типов содержимого, указанных в директиве length_hiding_types. Такая модульная функциональность дает пользователям возможность тонко настраивать обработку ответов в зависимости от конкретных потребностей их веб-сервисов.
Пример конфига
location /secure {
length_hiding on;
length_hiding_max 512;
length_hiding_types text/html;
}Убедитесь, что директива length_hiding включена; в противном случае эта директива не будет иметь эффекта.
Значения за пределами диапазона 256-2048 вызовут ошибки конфигурации из-за принудительных ограничений.
Добавляемая длина рандомизируется в зависимости от конфигурации; имейте в виду, что это частично для маскировки и не является точной мерой.