Компания Яндекс опубликовала (https://github.com/yandex/gixy) исходные тексты проекта Gixy, в рамках которого развивается статистический анализатор, предназначенный для выявления проблемных настроек в файлах конфигурации nginx, которые могут отрицательно повлиять на безопасность. Код написан на языке Python и распространяется (https://github.com/yandex/gixy) под лицензией MPL 2.0.
В настоящее время Gixy включает следующие плагины, выявляющие различные классы проблем:
- ssrf (https://github.com/yandex/gixy/blob/master/docs/ru/plugins/s...) - выявляет уязвимость Server Side Request Forgery, позволяющую выполнять различного рода запросы от имени Nginx. Проблема возникает, когда атакующий может контролировать адрес проксируемого сервера (второй аргумент директивы proxy_pass);
- http_splitting (https://github.com/yandex/gixy/blob/master/docs/ru/plugins/h...) - выявляет уязвимость HTTP Splitting, возникающую из-за неправильной обработки входных данных. Уязвимость может применяться для атак на приложение стоящее за Nginx (HTTP Request Splitting) или на клиентов приложения (HTTP Response Splitting).
- origins (https://github.com/yandex/gixy/blob/master/docs/ru/plugins/o...) - выявляет проблемы с проверкой заголовка запроса Referer или Origin, обычно возникающие из-за некорректного составления регулярного выражения;
- add_header_redefinition (https://github.com/yandex/gixy/blob/master/docs/ru/plugins/a...) - выявляет проблемы с переопределением "вышестоящих" заголовков ответа директивой "add_header";
- host_spoofing (https://github.com/yandex/gixy/blob/master/docs/ru/plugins/h...) - определяет возможность подмены заголовка запроса Host;
- valid_referers (https://github.com/yandex/gixy/blob/master/docs/ru/plugins/v...) - выявляет проблемы при конфигурировании модуля ngx_http_referer_module, вызванные использованием "none" в качестве принимаемого значения заголовка Referer;
- add_header_multiline (https://github.com/yandex/gixy/blob/master/docs/ru/plugins/a...) - определяет факты использования многострочных заголовков ответа.
URL: https://news.ycombinator.com/item?id=14315277
Новость: http://www.opennet.ru/opennews/art.shtml?num=46535