[http_splitting] also checks CR injection

pull/69/head
Andrew Krasichkov 2017-10-10 14:16:20 +03:00
parent b14934d3ba
commit acba288be7
3 changed files with 3 additions and 3 deletions

View File

@ -2,7 +2,7 @@
HTTP Splitting - attack that use improper input validation. It usually targets web application located behind Nginx (HTTP Request Splitting) or its users (HTTP Response Splitting).
Vulnerability is created when an attacker can insert newline character `\n` into request or into response, created by Nginx.
Vulnerability is created when an attacker can insert newline character `\n` or `\r` into request or into response, created by Nginx.
## How can I find it?
You should always pay attention to:

View File

@ -3,7 +3,7 @@
HTTP Splitting - уязвимость, возникающая из-за неправильной обработки входных данных.
Зачастую может быть для атак на приложение стоящее за Nginx (HTTP Request Splitting) или на клиентов приложения (HTTP Response Splitting).
Уязвимость возникает в случае, когда атакующий может внедрить символ перевода строки `\n` в запрос или ответ формируемый Nginx.
Уязвимость возникает в случае, когда атакующий может внедрить символ перевода строки `\n` или `\r` в запрос или ответ формируемый Nginx.
## Как самостоятельно обнаружить?
При анализе конфигурации всега стоит обращать внимание на:

View File

@ -29,7 +29,7 @@ class http_splitting(Plugin):
return
for var in compile_script(value):
if not var.can_contain('\n'):
if not var.can_contain('\n') and not var.can_contain('\r'):
continue
reason = 'At least variable "${var}" can contain "\\n"'.format(var=var.name)
self.add_issue(directive=[directive] + var.providers, reason=reason)