CRLF-инъекция
Что такое CRLF-инъекция?
CRLF-инъекцияАтака, внедряющая символы возврата каретки и перевода строки в HTTP-заголовки, журналы и другие текстовые протоколы для подделки новых строк.
CRLF-инъекция эксплуатирует особое значение последовательности CR (0x0D) и LF (0x0A), которая разделяет строки во многих текстовых протоколах. Когда приложение без проверки помещает пользовательский ввод в HTTP-заголовки ответа, журналы, команды SMTP или LDAP-запросы, атакующий может вставить пару CRLF и дополнительные данные, чтобы подделать заголовки, разделить ответ, скрыть журналы или подсунуть команды. В вебе наиболее опасная разновидность — HTTP response splitting: она позволяет отравить общий кеш, установить произвольные cookie или внедрить XSS в тело контролируемого ответа. Защита — отказ принимать CR/LF в полях, попадающих в заголовки, использование высокоуровневых API с экранированием и строгие кодировщики журналов.
● Примеры
- 01
Set-Cookie: id=foo%0d%0aSet-Cookie: admin=true — добавляет второй cookie через CRLF.
- 02
Location: /redir%0d%0aContent-Length:0%0d%0a%0d%0a<html>... — разделение HTTP-ответа.
● Частые вопросы
Что такое CRLF-инъекция?
Атака, внедряющая символы возврата каретки и перевода строки в HTTP-заголовки, журналы и другие текстовые протоколы для подделки новых строк. Относится к категории Атаки и угрозы в кибербезопасности.
Что означает CRLF-инъекция?
Атака, внедряющая символы возврата каретки и перевода строки в HTTP-заголовки, журналы и другие текстовые протоколы для подделки новых строк.
Как защититься от CRLF-инъекция?
Защита от CRLF-инъекция обычно сочетает технические меры и операционные практики, как описано в определении выше.
Какие есть другие названия CRLF-инъекция?
Распространённые альтернативные названия: Инъекция возврата каретки и перевода строки, Инъекция в журналы.