Welcome! Log In Create A New Profile

Advanced

nginx security advisory (CVE-2013-4547)

Maxim Dounin
November 26, 2013 11:39AM
Hello!

Ivan Fratric из Google Security Team обнаружил ошибку в nginx, которая
позволяет в некоторых случаях обходить ограничения безопасности с
помощью специального запроса, а также может иметь другие последствия
(CVE-2013-4547).

Некоторые проверки URI запроса не делались над символом, следующим за
незакодированным символом пробела (незакодированный пробел недопустим в
соответствии с протоколом HTTP, однако поддерживается начиная с nginx
0.8.41 из соображений совместимости). Одним из результатов ошибки была
возможность получить доступ к файлу, закрытому с помощью ограничений
доступа вида

location /protected/ {
deny all;
}

запросив его как "/foo /../protected/file" (в случае статических файлов -
только если существует каталог "foo ", с пробелом на конце), а также
возможность вызывать специальную обработку файла с пробелом на конце в
конфигурации вида

location ~ \.php$ {
fastcgi_pass ...
}

запросив файл как "/file \0.php".

Проблеме подвержены версии nginx 0.8.41 - 1.5.6.

Проблема исправлена в nginx 1.5.7, 1.4.4.

Патч, исправляющий проблему, доступен тут:

http://nginx.org/download/patch.2013.space.txt

В качестве временной защиты можно в каждом блоке server{}
воспользоваться конфигурацией вида:

if ($request_uri ~ " ") {
return 444;
}


--
Maxim Dounin
http://nginx.org/en/donation.html

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

nginx security advisory (CVE-2013-4547)

Maxim Dounin November 26, 2013 11:39AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 307
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready