WikiDer > Разделение HTTP-ответа

HTTP response splitting

Разделение HTTP-ответа это форма веб приложение уязвимостьв результате того, что приложение или его среда не смогли должным образом очистить входные значения. Его можно использовать для выполнения межсайтовый скриптинг атаки, межпользовательское искажение, отравление веб-кеша и т. д. подвиги.

Атака состоит в том, чтобы заставить сервер распечатать возврат каретки (CR, ASCII 0x0D) перевод строки (LF, ASCII 0x0A), за которым следует контент, предоставленный злоумышленником в заголовок раздел своего ответа, обычно путем включения их в поля ввода, отправляемые в приложение. По HTTP стандарт (RFC 2616), заголовки разделяются одним CRLF, а заголовки ответа отделяются от его тела двумя. Следовательно, отказ от удаления CR и LF позволяет злоумышленнику установить произвольные заголовки, взять под контроль тело или разбить ответ на два или более отдельных ответа - отсюда и название.

Профилактика

Общее решение - URL-кодирование строки перед включением в Заголовки HTTP Такие как Место расположения или же Set-Cookie.

Типичные примеры санитарной обработки включают: Кастинг к целые числа или агрессивный регулярное выражение замена. Хотя разделение ответа не является специфическим для PHP, интерпретатор PHP содержит защиту от атак начиная с версии 4.4.2 и 5.1.2.[1]

Рекомендации

  1. ^ «PHP: PHP 5.1.2. Объявление о выпуске». Группа PHP. Получено 2014-11-13.

внешняя ссылка